Package eu.bandm.tools.lljava.parser
Class LLJavaGrammar
java.lang.Object
eu.bandm.tools.lljava.parser.LLJavaGrammar
- Direct Known Subclasses:
LLJavaParser
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) final Parser<SourceId, LLJavaLexer.TokenType> protected static final Parser.Pragma -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected static <A> Expression<SourceId, LLJavaLexer.TokenType, A> angle(Expression<SourceId, LLJavaLexer.TokenType, A> body) annotation(Expression<SourceId, LLJavaLexer.TokenType, LLJava.Annotation> annotation) protected abstract LLJava.Annotationannotation(Reducer.Context<SourceId> context, LLJava.QualId name, List<Map.Entry<LLJava.Id, LLJava.AnnotationValue>> elems) annotationValue(Expression<SourceId, LLJavaLexer.TokenType, LLJava.Annotation> annotation, Expression<SourceId, LLJavaLexer.TokenType, LLJava.AnnotationValue> annotationValue) arrayAnnotationValue(Expression<SourceId, LLJavaLexer.TokenType, LLJava.AnnotationValue> annotationValue) protected abstract LLJava.Blockblock(Reducer.Context<SourceId> context, List<LLJava.Statement> statements) protected static <A> Expression<SourceId, LLJavaLexer.TokenType, A> brace(Expression<SourceId, LLJavaLexer.TokenType, A> body) protected static <A> Expression<SourceId, LLJavaLexer.TokenType, A> bracket(Expression<SourceId, LLJavaLexer.TokenType, A> body) protected abstract LLJava.CastcastInstruction(Reducer.Context<SourceId> context, LLJava.TypeExpr type) protected abstract LLJava.HandlercatchHandler(Reducer.Context<SourceId> context, List<LLJava.Label> prefixLabels, Optional<LLJava.ClassReference> type, List<LLJava.Label> infixLabels, LLJava.CodePoint body) protected abstract LLJava.CharLiteralcharLiteral(Reducer.Context<SourceId> context, String text) protected static <A> CheckedList<A> protected abstract LLJava.ClassclassDefinition(Reducer.Context<SourceId> context, List<LLJava.ModifierExpr> modifiers, LLJava.QualId name, List<LLJava.TypeParameter> typeParameters, LLJava.ClassReference superclass, List<LLJava.ClassReference> interfaces, List<LLJava.Member> members) protected abstract LLJava.ClassTypeExprclassType(Reducer.Context<SourceId> context, LLJava.QualId name, List<LLJava.TypeArgument> arguments) protected abstract LLJava.CmpcmpInstruction(Reducer.Context<SourceId> context, Optional<Boolean> greater) protected abstract LLJava.CodeMethodBodycodeMethodBody(Reducer.Context<SourceId> context, LLJava.Block block) protected static <A> Expression<SourceId, LLJavaLexer.TokenType, List<A>> comma(Expression<SourceId, LLJavaLexer.TokenType, A> body) protected Expression<SourceId, LLJavaLexer.TokenType, Void> command(LLJavaLexer.TokenType type) protected <A> Expression<SourceId, LLJavaLexer.TokenType, A> command(LLJavaLexer.TokenType type, Expression<SourceId, LLJavaLexer.TokenType, A> operand) protected abstract LLJava.Conditioncondition(Reducer.Context<SourceId> context, LLJavaLexer.TokenType operator, LLJava.LoadArgument operand) protected static <A> Expression<SourceId, LLJavaLexer.TokenType, A> constant(LLJavaLexer.TokenType type, A value) protected abstract LLJava.DimensionExprdimensionExpr(Reducer.Context<SourceId> context, List<LLJava.Annotation> annotations, boolean specified) protected abstract LLJava.DoubleLiteraldoubleLiteral(Reducer.Context<SourceId> context, String text) protected abstract LLJava.DynamicExprdynamicReference(Reducer.Context<SourceId> context, LLJava.TypeExpr type, LLJava.MemberDynamicName fullName) protected abstract LLJava.FieldfieldDefinition(Reducer.Context<SourceId> context, List<LLJava.ModifierExpr> modifiers, LLJava.TypeExpr type, LLJava.Id name, Optional<LLJava.Literal> initializer) protected Expression<SourceId, LLJavaLexer.TokenType, Boolean> flag(LLJavaLexer.TokenType type, Parser.Pragma... pragmas) protected abstract LLJava.FloatLiteralfloatLiteral(Reducer.Context<SourceId> context, String text) protected abstract LLJava.GetgetInstruction(Reducer.Context<SourceId> context, Void dummy, boolean statically, LLJava.FieldReference field) protected abstract LLJava.GotogotoInstruction(Reducer.Context<SourceId> context, LLJava.GotoPoint target) protected abstract LLJava.GotoIntervalgotoInterval(Reducer.Context<SourceId> context, LLJava.Name start, Optional<LLJava.Name> end) protected abstract LLJava.Idid(Reducer.Context<SourceId> context, String text) protected abstract LLJava.IfifInstruction(Reducer.Context<SourceId> context, boolean negative, LLJava.Condition condition, LLJava.CodePoint target) protected abstract LLJava.IncincInstruction(Reducer.Context<SourceId> context, LLJava.VariableRef target, int increment) protected abstract LLJava.InstanceofinstanceofInstruction(Reducer.Context<SourceId> context, LLJava.TypeExpr type) protected abstract LLJava.IntLiteralintLiteral(Reducer.Context<SourceId> context, String text) protected abstract LLJava.Annotationinvisible(Reducer.Context<SourceId> context, LLJava.Annotation annotation) protected abstract LLJava.InvokeinvokeInstruction(Reducer.Context<SourceId> context, Void dummy, List<LLJava.ModifierExpr> modifiers, LLJava.MethodReference ref) protected abstract LLJava.LoadloadInstruction(Reducer.Context<SourceId> context, LLJava.LoadArgument argument) protected static <A extends LLJava.Node>
Aprotected static <A extends LLJava.Node>
Alocate(A target, Reducer.Context<SourceId> context) protected abstract LLJava.LongLiterallongLiteral(Reducer.Context<SourceId> context, String text) protected abstract LLJava.MemberDynamicNamememberDynamicName(Reducer.Context<SourceId> context, LLJava.MethodHandleExpr factory, List<LLJava.LoadableExpr> bootstrapArguments, LLJava.Id name) protected abstract LLJava.MemberStaticNamememberStaticName(Reducer.Context<SourceId> context, LLJava.QualId name) protected abstract LLJava.MethodmethodDefinition(Reducer.Context<SourceId> context, List<LLJava.ModifierExpr> modifiers, List<LLJava.TypeParameter> typeParameters, LLJava.ResultExpr returnType, LLJava.Id name, List<LLJava.Parameter> parameters, List<LLJava.ClassReference> exceptions, LLJava.MethodBody body) protected abstract LLJava.MethodHandleExprmethodHandle(Reducer.Context<SourceId> context, LLJava.MethodHandleTarget target) protected abstract LLJava.ParametermethodParameter(Reducer.Context<SourceId> context, List<LLJava.ModifierExpr> modifiers, LLJava.TypeExpr type, Optional<LLJava.Name> name) protected abstract LLJava.MethodReferencemethodReference(Reducer.Context<SourceId> context, LLJava.ResultExpr returnType, LLJava.MemberFullName name, List<LLJava.MethodReferenceParameter> params) protected abstract LLJava.MethodTypeExprmethodType(Reducer.Context<SourceId> context, LLJava.ResultExpr result, List<LLJava.TypeExpr> parameters) protected abstract LLJava.NewnewInstruction(Reducer.Context<SourceId> context, LLJava.TypeExpr baseType, List<LLJava.DimensionExpr> dims) protected static <A> Expression<SourceId, LLJavaLexer.TokenType, A> paren(Expression<SourceId, LLJavaLexer.TokenType, A> body) protected abstract LLJava.PutputInstruction(Reducer.Context<SourceId> context, Void dummy, boolean statically, LLJava.FieldReference field) protected abstract LLJava.QualIdqualId(Reducer.Context<SourceId> context, List<LLJava.Id> ids) protected <A1,A2, R extends LLJava.Node>
Expression<SourceId, LLJavaLexer.TokenType, R> simple(BiFunction<? super A1, ? super A2, ? extends R> constructor, AbstractExpression<SourceId, LLJavaLexer.TokenType, A1> arg1, AbstractExpression<SourceId, LLJavaLexer.TokenType, A2> arg2) protected <A,R extends LLJava.Node>
Expression<SourceId, LLJavaLexer.TokenType, R> simple(Function<? super A, ? extends R> constructor, AbstractExpression<SourceId, LLJavaLexer.TokenType, A> arg1) protected <R extends LLJava.Node>
Expression<SourceId, LLJavaLexer.TokenType, R> simple(Supplier<? extends R> constructor, LLJavaLexer.TokenType... types) protected List<Map.Entry<LLJava.Id, LLJava.AnnotationValue>> protected abstract LLJava.InstructionsimpleInstruction(Reducer.Context<SourceId> context, LLJavaLexer.TokenType type) protected abstract LLJava.StorestoreInstruction(Reducer.Context<SourceId> context, LLJava.StoreArgument argument) protected abstract LLJava.StringLiteralstringLiteral(Reducer.Context<SourceId> context, List<String> text) protected abstract LLJava.CaseswitchCase(Reducer.Context<SourceId> context, List<Optional<LLJava.IntLiteral>> labels, LLJava.CodePoint target) protected abstract LLJava.SwitchswitchInstruction(Reducer.Context<SourceId> context, List<LLJava.Case> cases) protected abstract LLJava.TrytryInstruction(Reducer.Context<SourceId> context, LLJava.CodeInterval body, List<LLJava.Handler> handlers) protected abstract LLJava.TypeExprtype(Reducer.Context<SourceId> context, LLJava.TypeExpr base, List<LLJava.DimensionExpr> array) protected abstract LLJava.TypeParametertypeParameter(Reducer.Context<SourceId> context, List<LLJava.Annotation> annotations, LLJava.Id name, Optional<LLJava.UpperTypeBound> bound) protected static Expression<SourceId, LLJavaLexer.TokenType, Content<SourceId, LLJavaLexer.TokenType>> unparsedLiteral(LLJavaLexer.TokenType... types) protected static Expression<SourceId, LLJavaLexer.TokenType, String> unparsedLiteralText(LLJavaLexer.TokenType... types)
-
Field Details
-
id
-
qualId
-
qualifier
-
intLiteral
-
longLiteral
-
floatLiteral
-
doubleLiteral
-
booleanLiteral
-
charLiteral
-
stringLiteral
-
nullLiteral
-
literal
-
modifier
-
simpleModifierExpr
public final Expression<SourceId,LLJavaLexer.TokenType, simpleModifierExprLLJava.SimpleModifierExpr> -
constantAnnotationValue
public final Expression<SourceId,LLJavaLexer.TokenType, constantAnnotationValueLLJava.ConstantAnnotationValue> -
classAnnotationValue
public final Expression<SourceId,LLJavaLexer.TokenType, classAnnotationValueLLJava.ClassAnnotationValue> -
enumAnnotationValue
public final Expression<SourceId,LLJavaLexer.TokenType, enumAnnotationValueLLJava.EnumAnnotationValue> -
annotation
-
invisibleAnnotation
-
annotationValue
-
modifierExpr
-
modifiers
-
primitiveType
-
primitiveTypeExpr
-
classType
-
baseType
-
dimensionExpr
-
type
-
typeParameter
-
typeParameters
-
voidResult
-
returnsResult
-
result
-
memberStaticName
-
fieldReference
-
getInstruction
-
putInstruction
-
methodReferenceParameter
public final Expression<SourceId,LLJavaLexer.TokenType, methodReferenceParameterLLJava.MethodReferenceParameter> -
methodReferenceNonrecursive
public final Expression<SourceId,LLJavaLexer.TokenType, methodReferenceNonrecursiveLLJava.MethodReference> -
invokeInstructionNonrecursive
-
methodHandleTarget
public final Expression<SourceId,LLJavaLexer.TokenType, methodHandleTargetLLJava.MethodHandleTarget> -
methodHandle
-
methodType
-
classLiteral
-
loadable
-
memberDynamicName
-
memberFullName
-
methodReference
-
classReference
-
localName
-
label
-
localVariable
-
thisExpr
-
variableReference
-
arrayExpr
-
storeArgument
-
storeInstruction
-
invokeInstruction
-
loadArgument
-
loadInstruction
-
operator
-
condition
-
castInstruction
-
instanceofInstruction
-
newInstruction
-
gotoInterval
-
gotoReference
-
gotoInstruction
-
incInstruction
-
cmpOperator
-
cmpInstruction
-
block
-
initializer
-
fieldDefinition
-
methodParameter
-
methodParameters
-
abstractMethodBody
public final Expression<SourceId,LLJavaLexer.TokenType, abstractMethodBodyLLJava.AbstractMethodBody> -
defaultMethodBody
-
codeMethodBody
-
methodBody
-
exceptions
-
methodDefinition
-
superclass
-
superinterfaces
-
memberDefinition
-
classDeclarator
-
classDefinition
-
main
-
greedy
-
-
Constructor Details
-
LLJavaGrammar
public LLJavaGrammar()
-
-
Method Details
-
arrayAnnotationValue
public final Expression<SourceId,LLJavaLexer.TokenType, arrayAnnotationValueLLJava.ArrayAnnotationValue> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.AnnotationValue> annotationValue) -
nestedAnnotationValue
public final Expression<SourceId,LLJavaLexer.TokenType, nestedAnnotationValueLLJava.NestedAnnotationValue> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Annotation> annotation) -
annotationValue
public final Expression<SourceId,LLJavaLexer.TokenType, annotationValueLLJava.AnnotationValue> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Annotation> annotation, Expression<SourceId, LLJavaLexer.TokenType, LLJava.AnnotationValue> annotationValue) -
annotationValue
public final Expression<SourceId,LLJavaLexer.TokenType, annotationValueLLJava.AnnotationValue> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Annotation> annotation) -
elementValuePair
public final Expression<SourceId,LLJavaLexer.TokenType, elementValuePairMap.Entry<LLJava.Id, LLJava.AnnotationValue>> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Annotation> annotation) -
elementValuePairs
public final Expression<SourceId,LLJavaLexer.TokenType, elementValuePairsList<Map.Entry<LLJava.Id, LLJava.AnnotationValue>>> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Annotation> annotation) -
annotation
public final Expression<SourceId,LLJavaLexer.TokenType, annotationLLJava.Annotation> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Annotation> annotation) -
upperTypeBound
public final Expression<SourceId,LLJavaLexer.TokenType, upperTypeBoundLLJava.UpperTypeBound> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.ClassTypeExpr> classType) -
lowerTypeBound
public final Expression<SourceId,LLJavaLexer.TokenType, lowerTypeBoundLLJava.LowerTypeBound> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.ClassTypeExpr> classType) -
typeBound
public final Expression<SourceId,LLJavaLexer.TokenType, typeBoundLLJava.TypeBound> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.ClassTypeExpr> classType) -
wildcard
public final Expression<SourceId,LLJavaLexer.TokenType, wildcardLLJava.Wildcard> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.ClassTypeExpr> classType) -
typeArgument
public final Expression<SourceId,LLJavaLexer.TokenType, typeArgumentLLJava.TypeArgument> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.ClassTypeExpr> classType) -
typeArguments
public final Expression<SourceId,LLJavaLexer.TokenType, typeArgumentsList<LLJava.TypeArgument>> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.ClassTypeExpr> classType) -
classType
public final Expression<SourceId,LLJavaLexer.TokenType, classTypeLLJava.ClassTypeExpr> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.ClassTypeExpr> classType) -
memberDynamicName
public final Expression<SourceId,LLJavaLexer.TokenType, memberDynamicNameLLJava.MemberDynamicName> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.LoadableExpr> loadable) -
dynamicReference
public final Expression<SourceId,LLJavaLexer.TokenType, dynamicReferenceLLJava.DynamicExpr> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.LoadableExpr> loadable) -
loadable
public final Expression<SourceId,LLJavaLexer.TokenType, loadableLLJava.LoadableExpr> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.LoadableExpr> loadable) -
ifInstruction
public final Expression<SourceId,LLJavaLexer.TokenType, ifInstructionLLJava.If> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Block> block) -
inlineInterval
public final Expression<SourceId,LLJavaLexer.TokenType, inlineIntervalLLJava.InlineInterval> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Block> block) -
codeInterval
public final Expression<SourceId,LLJavaLexer.TokenType, codeIntervalLLJava.CodeInterval> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Block> block) -
inlineReference
public final Expression<SourceId,LLJavaLexer.TokenType, inlineReferenceLLJava.InlinePoint> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Block> block) -
codeReference
public final Expression<SourceId,LLJavaLexer.TokenType, codeReferenceLLJava.CodePoint> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Block> block) -
catchHandler
public final Expression<SourceId,LLJavaLexer.TokenType, catchHandlerLLJava.Handler> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Block> block) -
tryInstruction
public final Expression<SourceId,LLJavaLexer.TokenType, tryInstructionLLJava.Try> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Block> block) -
switchCase
public final Expression<SourceId,LLJavaLexer.TokenType, switchCaseLLJava.Case> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Block> block) -
switchInstruction
public final Expression<SourceId,LLJavaLexer.TokenType, switchInstructionLLJava.Switch> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Block> block) -
instruction
public final Expression<SourceId,LLJavaLexer.TokenType, instructionLLJava.Instruction> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Block> block) -
statement
public final Expression<SourceId,LLJavaLexer.TokenType, statementLLJava.Statement> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Block> block) -
block
public final Expression<SourceId,LLJavaLexer.TokenType, blockLLJava.Block> (Expression<SourceId, LLJavaLexer.TokenType, LLJava.Block> block) -
id
protected abstract LLJava.Id id(Reducer.Context<SourceId> context, String text) throws Reducer.Abort - Throws:
Reducer.Abort
-
qualId
protected abstract LLJava.QualId qualId(Reducer.Context<SourceId> context, List<LLJava.Id> ids) throws Reducer.Abort - Throws:
Reducer.Abort
-
intLiteral
protected abstract LLJava.IntLiteral intLiteral(Reducer.Context<SourceId> context, String text) throws Reducer.Abort - Throws:
Reducer.Abort
-
longLiteral
protected abstract LLJava.LongLiteral longLiteral(Reducer.Context<SourceId> context, String text) throws Reducer.Abort - Throws:
Reducer.Abort
-
floatLiteral
protected abstract LLJava.FloatLiteral floatLiteral(Reducer.Context<SourceId> context, String text) throws Reducer.Abort - Throws:
Reducer.Abort
-
doubleLiteral
protected abstract LLJava.DoubleLiteral doubleLiteral(Reducer.Context<SourceId> context, String text) throws Reducer.Abort - Throws:
Reducer.Abort
-
charLiteral
protected abstract LLJava.CharLiteral charLiteral(Reducer.Context<SourceId> context, String text) throws Reducer.Abort - Throws:
Reducer.Abort
-
stringLiteral
protected abstract LLJava.StringLiteral stringLiteral(Reducer.Context<SourceId> context, List<String> text) throws Reducer.Abort - Throws:
Reducer.Abort
-
methodHandle
protected abstract LLJava.MethodHandleExpr methodHandle(Reducer.Context<SourceId> context, LLJava.MethodHandleTarget target) throws Reducer.Abort - Throws:
Reducer.Abort
-
methodType
protected abstract LLJava.MethodTypeExpr methodType(Reducer.Context<SourceId> context, LLJava.ResultExpr result, List<LLJava.TypeExpr> parameters) throws Reducer.Abort - Throws:
Reducer.Abort
-
dynamicReference
protected abstract LLJava.DynamicExpr dynamicReference(Reducer.Context<SourceId> context, LLJava.TypeExpr type, LLJava.MemberDynamicName fullName) throws Reducer.Abort - Throws:
Reducer.Abort
-
annotation
protected abstract LLJava.Annotation annotation(Reducer.Context<SourceId> context, LLJava.QualId name, List<Map.Entry<LLJava.Id, LLJava.AnnotationValue>> elems) throws Reducer.Abort- Throws:
Reducer.Abort
-
invisible
protected abstract LLJava.Annotation invisible(Reducer.Context<SourceId> context, LLJava.Annotation annotation) throws Reducer.Abort - Throws:
Reducer.Abort
-
dimensionExpr
protected abstract LLJava.DimensionExpr dimensionExpr(Reducer.Context<SourceId> context, List<LLJava.Annotation> annotations, boolean specified) throws Reducer.Abort - Throws:
Reducer.Abort
-
classType
protected abstract LLJava.ClassTypeExpr classType(Reducer.Context<SourceId> context, LLJava.QualId name, List<LLJava.TypeArgument> arguments) throws Reducer.Abort - Throws:
Reducer.Abort
-
typeParameter
protected abstract LLJava.TypeParameter typeParameter(Reducer.Context<SourceId> context, List<LLJava.Annotation> annotations, LLJava.Id name, Optional<LLJava.UpperTypeBound> bound) throws Reducer.Abort - Throws:
Reducer.Abort
-
type
protected abstract LLJava.TypeExpr type(Reducer.Context<SourceId> context, LLJava.TypeExpr base, List<LLJava.DimensionExpr> array) throws Reducer.Abort - Throws:
Reducer.Abort
-
fieldDefinition
protected abstract LLJava.Field fieldDefinition(Reducer.Context<SourceId> context, List<LLJava.ModifierExpr> modifiers, LLJava.TypeExpr type, LLJava.Id name, Optional<LLJava.Literal> initializer) throws Reducer.Abort - Throws:
Reducer.Abort
-
getInstruction
protected abstract LLJava.Get getInstruction(Reducer.Context<SourceId> context, Void dummy, boolean statically, LLJava.FieldReference field) throws Reducer.Abort - Throws:
Reducer.Abort
-
putInstruction
protected abstract LLJava.Put putInstruction(Reducer.Context<SourceId> context, Void dummy, boolean statically, LLJava.FieldReference field) throws Reducer.Abort - Throws:
Reducer.Abort
-
storeInstruction
protected abstract LLJava.Store storeInstruction(Reducer.Context<SourceId> context, LLJava.StoreArgument argument) throws Reducer.Abort - Throws:
Reducer.Abort
-
loadInstruction
protected abstract LLJava.Load loadInstruction(Reducer.Context<SourceId> context, LLJava.LoadArgument argument) throws Reducer.Abort - Throws:
Reducer.Abort
-
invokeInstruction
protected abstract LLJava.Invoke invokeInstruction(Reducer.Context<SourceId> context, Void dummy, List<LLJava.ModifierExpr> modifiers, LLJava.MethodReference ref) throws Reducer.Abort - Throws:
Reducer.Abort
-
condition
protected abstract LLJava.Condition condition(Reducer.Context<SourceId> context, LLJavaLexer.TokenType operator, LLJava.LoadArgument operand) throws Reducer.Abort - Throws:
Reducer.Abort
-
ifInstruction
protected abstract LLJava.If ifInstruction(Reducer.Context<SourceId> context, boolean negative, LLJava.Condition condition, LLJava.CodePoint target) throws Reducer.Abort - Throws:
Reducer.Abort
-
switchCase
protected abstract LLJava.Case switchCase(Reducer.Context<SourceId> context, List<Optional<LLJava.IntLiteral>> labels, LLJava.CodePoint target) throws Reducer.Abort - Throws:
Reducer.Abort
-
switchInstruction
protected abstract LLJava.Switch switchInstruction(Reducer.Context<SourceId> context, List<LLJava.Case> cases) throws Reducer.Abort - Throws:
Reducer.Abort
-
castInstruction
protected abstract LLJava.Cast castInstruction(Reducer.Context<SourceId> context, LLJava.TypeExpr type) throws Reducer.Abort - Throws:
Reducer.Abort
-
instanceofInstruction
protected abstract LLJava.Instanceof instanceofInstruction(Reducer.Context<SourceId> context, LLJava.TypeExpr type) throws Reducer.Abort - Throws:
Reducer.Abort
-
newInstruction
protected abstract LLJava.New newInstruction(Reducer.Context<SourceId> context, LLJava.TypeExpr baseType, List<LLJava.DimensionExpr> dims) throws Reducer.Abort - Throws:
Reducer.Abort
-
gotoInterval
protected abstract LLJava.GotoInterval gotoInterval(Reducer.Context<SourceId> context, LLJava.Name start, Optional<LLJava.Name> end) throws Reducer.Abort - Throws:
Reducer.Abort
-
catchHandler
protected abstract LLJava.Handler catchHandler(Reducer.Context<SourceId> context, List<LLJava.Label> prefixLabels, Optional<LLJava.ClassReference> type, List<LLJava.Label> infixLabels, LLJava.CodePoint body) throws Reducer.Abort - Throws:
Reducer.Abort
-
tryInstruction
protected abstract LLJava.Try tryInstruction(Reducer.Context<SourceId> context, LLJava.CodeInterval body, List<LLJava.Handler> handlers) throws Reducer.Abort - Throws:
Reducer.Abort
-
gotoInstruction
protected abstract LLJava.Goto gotoInstruction(Reducer.Context<SourceId> context, LLJava.GotoPoint target) throws Reducer.Abort - Throws:
Reducer.Abort
-
incInstruction
protected abstract LLJava.Inc incInstruction(Reducer.Context<SourceId> context, LLJava.VariableRef target, int increment) throws Reducer.Abort - Throws:
Reducer.Abort
-
simpleInstruction
protected abstract LLJava.Instruction simpleInstruction(Reducer.Context<SourceId> context, LLJavaLexer.TokenType type) throws Reducer.Abort - Throws:
Reducer.Abort
-
cmpInstruction
protected abstract LLJava.Cmp cmpInstruction(Reducer.Context<SourceId> context, Optional<Boolean> greater) throws Reducer.Abort - Throws:
Reducer.Abort
-
block
protected abstract LLJava.Block block(Reducer.Context<SourceId> context, List<LLJava.Statement> statements) throws Reducer.Abort - Throws:
Reducer.Abort
-
memberStaticName
protected abstract LLJava.MemberStaticName memberStaticName(Reducer.Context<SourceId> context, LLJava.QualId name) throws Reducer.Abort - Throws:
Reducer.Abort
-
memberDynamicName
protected abstract LLJava.MemberDynamicName memberDynamicName(Reducer.Context<SourceId> context, LLJava.MethodHandleExpr factory, List<LLJava.LoadableExpr> bootstrapArguments, LLJava.Id name) throws Reducer.Abort - Throws:
Reducer.Abort
-
methodReference
protected abstract LLJava.MethodReference methodReference(Reducer.Context<SourceId> context, LLJava.ResultExpr returnType, LLJava.MemberFullName name, List<LLJava.MethodReferenceParameter> params) throws Reducer.Abort - Throws:
Reducer.Abort
-
methodParameter
protected abstract LLJava.Parameter methodParameter(Reducer.Context<SourceId> context, List<LLJava.ModifierExpr> modifiers, LLJava.TypeExpr type, Optional<LLJava.Name> name) throws Reducer.Abort - Throws:
Reducer.Abort
-
codeMethodBody
protected abstract LLJava.CodeMethodBody codeMethodBody(Reducer.Context<SourceId> context, LLJava.Block block) throws Reducer.Abort - Throws:
Reducer.Abort
-
methodDefinition
protected abstract LLJava.Method methodDefinition(Reducer.Context<SourceId> context, List<LLJava.ModifierExpr> modifiers, List<LLJava.TypeParameter> typeParameters, LLJava.ResultExpr returnType, LLJava.Id name, List<LLJava.Parameter> parameters, List<LLJava.ClassReference> exceptions, LLJava.MethodBody body) throws Reducer.Abort - Throws:
Reducer.Abort
-
classDefinition
protected abstract LLJava.Class classDefinition(Reducer.Context<SourceId> context, List<LLJava.ModifierExpr> modifiers, LLJava.QualId name, List<LLJava.TypeParameter> typeParameters, LLJava.ClassReference superclass, List<LLJava.ClassReference> interfaces, List<LLJava.Member> members) throws Reducer.Abort - Throws:
Reducer.Abort
-
unparsedLiteral
protected static Expression<SourceId,LLJavaLexer.TokenType, unparsedLiteralContent<SourceId, LLJavaLexer.TokenType>> (LLJavaLexer.TokenType... types) -
unparsedLiteralText
protected static Expression<SourceId,LLJavaLexer.TokenType, unparsedLiteralTextString> (LLJavaLexer.TokenType... types) -
constant
protected static <A> Expression<SourceId,LLJavaLexer.TokenType, constantA> (LLJavaLexer.TokenType type, A value) -
brace
protected static <A> Expression<SourceId,LLJavaLexer.TokenType, braceA> (Expression<SourceId, LLJavaLexer.TokenType, A> body) -
paren
protected static <A> Expression<SourceId,LLJavaLexer.TokenType, parenA> (Expression<SourceId, LLJavaLexer.TokenType, A> body) -
bracket
protected static <A> Expression<SourceId,LLJavaLexer.TokenType, bracketA> (Expression<SourceId, LLJavaLexer.TokenType, A> body) -
angle
protected static <A> Expression<SourceId,LLJavaLexer.TokenType, angleA> (Expression<SourceId, LLJavaLexer.TokenType, A> body) -
comma
protected static <A> Expression<SourceId,LLJavaLexer.TokenType, commaList<A>> (Expression<SourceId, LLJavaLexer.TokenType, A> body) -
simpleAnnotation
protected List<Map.Entry<LLJava.Id,LLJava.AnnotationValue>> simpleAnnotation(LLJava.AnnotationValue value) -
command
-
command
protected <A> Expression<SourceId,LLJavaLexer.TokenType, commandA> (LLJavaLexer.TokenType type, Expression<SourceId, LLJavaLexer.TokenType, A> operand) -
flag
protected Expression<SourceId,LLJavaLexer.TokenType, flagBoolean> (LLJavaLexer.TokenType type, Parser.Pragma... pragmas) -
locate
-
locate
-
simple
protected <R extends LLJava.Node> Expression<SourceId,LLJavaLexer.TokenType, simpleR> (Supplier<? extends R> constructor, LLJavaLexer.TokenType... types) -
simple
protected <A,R extends LLJava.Node> Expression<SourceId,LLJavaLexer.TokenType, simpleR> (Function<? super A, ? extends R> constructor, AbstractExpression<SourceId, LLJavaLexer.TokenType, A> arg1) -
simple
protected <A1,A2, Expression<SourceId,R extends LLJava.Node> LLJavaLexer.TokenType, simpleR> (BiFunction<? super A1, ? super A2, ? extends R> constructor, AbstractExpression<SourceId, LLJavaLexer.TokenType, A1> arg1, AbstractExpression<SourceId, LLJavaLexer.TokenType, A2> arg2) -
check
-