public static final class InlineSupport.InlineTarget extends Object
public static InlinedCountingConditionProfile inline( @RequiredField(value = StateField.class, bits = 7) // @RequiredField(value = PrimitiveIntField.class) // @RequiredField(value = ReferenceField.class, type = String.class) InlineTarget target) { StateField state = target.getState(0, 7); PrimitiveIntField primitive = target.getPrimitive(1, PrimitiveIntField.class); ReferenceField reference = target.getReference(2, String.class); // pass fields on to inline node }
Modifier and Type | Method and Description |
---|---|
static InlineSupport.InlineTarget |
create(Class<?> targetClass,
InlineSupport.InlinableField... updaters)
Creates an inline target for an inlined node.
|
<T extends InlineSupport.InlinableField> |
getPrimitive(int index,
Class<T> fieldClass)
Requests a primitive field for a given field index.
|
<V> InlineSupport.ReferenceField<V> |
getReference(int index,
Class<?> valueClass)
Requests a reference field for a given field index.
|
InlineSupport.StateField |
getState(int index,
int minimumBits)
Requests a state field for a given field index.
|
Class<?> |
getTargetClass()
Returns static target class this inlining specification was applied.
|
public Class<?> getTargetClass()
public <T extends InlineSupport.InlinableField> T getPrimitive(int index, Class<T> fieldClass)
InlineSupport.RequiredField
on the target
parameter of an inline method otherwise an IncompatibleClassChangeError
is
thrown.public InlineSupport.StateField getState(int index, int minimumBits)
InlineSupport.RequiredField
on the target
parameter of an inline method otherwise an IncompatibleClassChangeError
is
thrown.public <V> InlineSupport.ReferenceField<V> getReference(int index, Class<?> valueClass)
InlineSupport.RequiredField
on the target
parameter of an inline method otherwise an IncompatibleClassChangeError
is
thrown.public static InlineSupport.InlineTarget create(Class<?> targetClass, InlineSupport.InlinableField... updaters)