blob: 216080d4b2669ae94fc233b83c42eb739cc6705c [file] [log] [blame]
// Copyright (c) 2021, the R8 project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
package com.android.tools.r8.diagnostic.internal;
import com.android.tools.r8.diagnostic.MissingDefinitionContext;
import com.android.tools.r8.diagnostic.MissingDefinitionInfo;
import com.android.tools.r8.diagnostic.MissingFieldInfo;
import com.android.tools.r8.references.FieldReference;
import java.util.Collection;
public class MissingFieldInfoImpl extends MissingDefinitionInfoBase implements MissingFieldInfo {
private final FieldReference fieldReference;
private MissingFieldInfoImpl(
FieldReference fieldReference, Collection<MissingDefinitionContext> referencedFromContexts) {
super(referencedFromContexts);
this.fieldReference = fieldReference;
}
public static Builder builder() {
return new Builder();
}
@Override
public FieldReference getFieldReference() {
return fieldReference;
}
public static class Builder extends MissingDefinitionInfoBase.Builder {
private FieldReference fieldReference;
private Builder() {}
public Builder setField(FieldReference fieldReference) {
this.fieldReference = fieldReference;
return this;
}
public MissingDefinitionInfo build() {
return new MissingFieldInfoImpl(fieldReference, referencedFromContextsBuilder.build());
}
}
}