blob: fa3fc335a5ccfc237a65b51b0990d3f405831fc0 [file] [log] [blame]
// Copyright (c) 2020, 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.synthesis;
import com.android.tools.r8.graph.ClassKind;
import com.android.tools.r8.graph.DexItemFactory;
import com.android.tools.r8.graph.DexProgramClass;
import com.android.tools.r8.graph.DexType;
import com.android.tools.r8.synthesis.SyntheticNaming.SyntheticKind;
public class SyntheticProgramClassBuilder
extends SyntheticClassBuilder<SyntheticProgramClassBuilder, DexProgramClass> {
SyntheticProgramClassBuilder(
DexType type,
SyntheticKind syntheticKind,
SynthesizingContext context,
DexItemFactory factory) {
super(type, syntheticKind, context, factory);
}
@Override
public ClassKind<DexProgramClass> getClassKind() {
return ClassKind.PROGRAM;
}
@Override
public SyntheticProgramClassBuilder self() {
return this;
}
@Override
public DexProgramClass build() {
DexProgramClass clazz = super.build();
assert !SyntheticMarker.isDefinitelyNotSyntheticProgramClass(clazz);
return clazz;
}
}