// Rendered by UMod Pretty Printer at 2026-02-18_13h26m26 // See also the UMod user documentation online. MODEL LLJava = EXT Character FROM java.lang.Character EXT String FROM java.lang.String EXT Integer FROM java.lang.Integer EXT Long FROM java.lang.Long EXT Float FROM java.lang.Float EXT Double FROM java.lang.Double EXT SourceId SOURCE FROM eu.bandm.tools.lljava.absy.SourceId EXT Location SOURCE FROM eu.bandm.tools.location.Location ENUM HandleKind = GetField, GetStatic, PutField, PutStatic, InvokeVirtual, InvokeStatic, InvokeSpecial, NewInvokeSpecial, InvokeInterface ENUM Condition = Eq, NEq, LEq, GEq, LT, GT, Eq0, NEq0, LEq0, GEq0, LT0, GT0, EqNull, NEqNull ENUM Modifier = Public, Protected, Private, Abstract, Static, Interface, Enum, Annotation, Final, Synthetic, Super, Bridge, Strictfp, Volatile, Transient, Synchronized, Native, Varargs, Mandated ENUM Strategy = Virtual, Special, Static, Interface, Dynamic TOPLEVEL CLASS QualId ALGEBRAIC qualifier SEQ Id id Id StackFrame ALGEBRAIC locals SEQ VType operands SEQ VType uninitThis bool Anonymity VType ABSTRACT ALGEBRAIC | TopVType ALGEBRAIC | Category1VType ABSTRACT ALGEBRAIC | | UninitializedThisVType ALGEBRAIC | | OneWordVType ALGEBRAIC | | NullVType ALGEBRAIC | | FloatVType ALGEBRAIC | | ObjectVType ALGEBRAIC classname string | | UninitializedNewVType ALGEBRAIC offset New | | UninitializedVType ALGEBRAIC | | ReferenceVType ALGEBRAIC | | AbstractIntVType ABSTRACT ALGEBRAIC | | | CharVType ALGEBRAIC | | | IntVType ALGEBRAIC | | | BooleanVType ALGEBRAIC | | | ShortVType ALGEBRAIC | | | ByteVType ALGEBRAIC | Category2VType ABSTRACT ALGEBRAIC | | TwoWordVType ALGEBRAIC | | DoubleVType ALGEBRAIC | | LongVType ALGEBRAIC Node ABSTRACT location OPT Location | ClassParent | ModifierExpr ABSTRACT | | Annotation name QualId runtimeVisible bool elems Id->AnnotationValue | | SimpleModifierExpr modifier Modifier | Modifiable ABSTRACT annotations SEQ Annotation modifiers SET Modifier | | Attributable ABSTRACT attrs SEQ Attribute | | | InnerClass name OPT Id definition OPT Class | | | Member ABSTRACT name Id nameEntry OPT ConstantUTF8 descriptorEntry OPT ConstantUTF8 signatureEntry OPT ConstantUTF8 | | | | Method typeParameters SEQ TypeParameter result ResultExpr parameters SEQ Parameter exceptions SEQ ClassReference body MethodBody | | | | Field type TypeExpr initializer OPT Literal | | | Class name QualId innerName OPT Id typeParameters SEQ TypeParameter superClass ClassReference interfaces SEQ ClassReference fields SEQ Field methods SEQ Method innerClasses SEQ InnerClass pool SEQ ConstantPoolEntry thisEntry OPT ClassRef signatureEntry OPT ConstantUTF8 | | Parameter type TypeExpr name OPT Name variable OPT Variable | MemberReference ABSTRACT fullName ABSTRACT GETTER MemberFullName entry ABSTRACT GETTER OPT MemberRef | | FieldReference type TypeExpr fullName MemberStaticName entry OPT FieldRef | | MethodReference asInterface bool result ResultExpr fullName MemberFullName parameters SEQ MethodReferenceParameter entry OPT AbstractMethodRef dynamicEntry OPT InvokeDynamic | CodePoint ABSTRACT | | GotoPoint id Name target OPT Block | | InlinePoint body Block | LoadArgument ABSTRACT | | NullLiteral | | LoadableExpr ABSTRACT entry ABSTRACT GETTER Loadable | | | MethodHandleExpr target MethodHandleTarget entry OPT MethodHandle | | | ClassExpr type ClassTypeExpr entry OPT ClassRef | | | DynamicExpr type TypeExpr fullName MemberDynamicName | | | MethodTypeExpr result ResultExpr parameters SEQ TypeExpr entry OPT MethodType | | | Literal ABSTRACT | | | | IntLiteral value Integer entry OPT ConstantInteger | | | | LongLiteral value Long entry OPT ConstantLong | | | | DoubleLiteral value Double entry OPT ConstantDouble | | | | CharLiteral value Character entry OPT ConstantInteger | | | | StringLiteral value String entry OPT ConstantString | | | | FloatLiteral value Float entry OPT ConstantFloat | | | | BooleanLiteral value bool entry OPT ConstantInteger | | StoreArgument ABSTRACT | | | VariableAccess ABSTRACT target OPT Slot | | | | This | | | | SlotRef | | | | VariableRef name Name | | | | SlotReference index int wide bool | | | ArrayAccess type OPT Type | AnnotationValue ABSTRACT | | NestedAnnotationValue annotation Annotation | | ConstantAnnotationValue literal Literal | | EnumAnnotationValue type QualId name Id | | ClassAnnotationValue name QualId | | ArrayAnnotationValue elems SEQ AnnotationValue | Case labels SET Integer isDefault bool body CodePoint | Handler type OPT ClassReference body CodePoint | TypeArgument ABSTRACT annotations SEQ Annotation erasure ABSTRACT GETTER OPT Type | | Wildcard bound OPT TypeBound erasure OPT RefType | | TypeExpr ABSTRACT | | | ReferenceTypeExpr ABSTRACT erasure OPT RefType | | | | ClassTypeExpr name QualId arguments SEQ TypeArgument parameter bool | | | | ArrayTypeExpr base TypeExpr specified bool | | | PrimitiveTypeExpr erasure PrimitiveType | CodeInterval ABSTRACT | | InlineInterval body Block | | GotoInterval start Name end OPT Name startTarget OPT Block endTarget OPT Block | Exception range GotoInterval type OPT ClassReference target GotoPoint | ClassReference type ClassTypeExpr entry OPT ClassRef | MemberFullName ABSTRACT name Id | | MemberStaticName owner OPT QualId | | MemberDynamicName factory MethodHandleExpr bootstrapArguments SEQ LoadableExpr | MethodReferenceParameter type OPT TypeExpr | TypeBound ABSTRACT limit ReferenceTypeExpr erasure OPT Type | | UpperTypeBound interfaces SEQ ReferenceTypeExpr | | LowerTypeBound | MethodBody ABSTRACT | | CodeMethodBody block Block exceptionTable SEQ Exception maxLocals OPT Integer maxOperands OPT Integer stackMapPlaces SET Instruction stackMap SEQ StackFrameDelta | | AbstractMethodBody | | DefaultMethodBody value AnnotationValue | DimensionExpr specified bool annotations SEQ Annotation | ResultExpr ABSTRACT erasure OPT Result | | ReturnsExpr type TypeExpr | | VoidExpr | TypeParameter annotations SEQ Annotation name Id bound UpperTypeBound | Statement ABSTRACT | | Local type TypeExpr name OPT Name variable OPT Variable | | Label name Name | | Block labels SEQ Name implicit bool elems SEQ Statement controlEnv Name->Block dataEnv Name->Variable | | LocalClass target Class | | Instruction ABSTRACT pre OPT StackFrame post OPT StackFrame | | | MethodHandleTarget ABSTRACT target ABSTRACT GETTER MemberReference | | | | FieldAccess ABSTRACT statically bool target FieldReference | | | | | Put | | | | | Get | | | | Invoke modifiers SET Modifier strategy OPT Strategy target MethodReference | | | Monitor ABSTRACT | | | | Enter | | | | Exit | | | TypeInstruction ABSTRACT type ABSTRACT GETTER TypeExpr entry OPT ClassRef | | | | Cast type TypeExpr | | | | Instanceof type ReferenceTypeExpr | | | | New type ReferenceTypeExpr multiarray int | | | Nop | | | Pop | | | Switch cases SEQ Case | | | ArithInstruction ABSTRACT | | | | XOr | | | | Sub | | | | Cmp ABSTRACT | | | | | CmpGT | | | | | CmpLT | | | | | CmpFloating greaterNaN bool | | | | | CmpIntegral | | | | Rem | | | | Shift ABSTRACT | | | | | Shl | | | | | UShr | | | | | Shr | | | | Neg | | | | Or | | | | Add | | | | Div | | | | And | | | | Mul | | | | Inc target VariableAccess increment int | | | If neg bool condition Condition body CodePoint | | | Jump ABSTRACT | | | | Throw | | | | Return | | | | Goto target GotoPoint | | | Length | | | Dup | | | Try body CodeInterval handlers SEQ Handler | | | Load arg LoadArgument | | | Store arg StoreArgument | | | Swap Id ALGEBRAIC text String StackFrameDelta ALGEBRAIC delta int next StackFrame Slot ALGEBRAIC type Type index int BootstrapMethod ALGEBRAIC handle MethodHandle arguments SEQ Loadable Result ABSTRACT ALGEBRAIC | Type ABSTRACT ALGEBRAIC | | PrimitiveType ABSTRACT ALGEBRAIC | | | BooleanType ALGEBRAIC | | | ShortType ALGEBRAIC | | | IntType ALGEBRAIC | | | WideType ABSTRACT ALGEBRAIC | | | | DoubleType ALGEBRAIC | | | | LongType ALGEBRAIC | | | FloatType ALGEBRAIC | | | CharType ALGEBRAIC | | | ByteType ALGEBRAIC | | RefType ABSTRACT ALGEBRAIC | | | ArrayType ALGEBRAIC element Type | | | ClassType ALGEBRAIC name QualId | Void ALGEBRAIC Attribute ABSTRACT name ABSTRACT GETTER ConstantUTF8 | SignatureAttribute ABSTRACT name ConstantUTF8 signature OPT ConstantUTF8 | | ClassSignatureAttribute | | FieldSignatureAttribute | | MethodSignatureAttribute | StackMapTableAttribute name ConstantUTF8 | CodeAttribute name ConstantUTF8 stackMap OPT StackMapTableAttribute | CustomAttribute name ConstantUTF8 attrs SEQ Attribute | BootstrapMethodsAttribute name ConstantUTF8 bootstrapMethods SEQ BootstrapMethod | ConstantValueAttribute name ConstantUTF8 | AnnotationDefaultAttribute name ConstantUTF8 | ExceptionsAttribute name ConstantUTF8 MethodName ConstantPoolEntry ABSTRACT ALGEBRAIC | AbstractDynamic ABSTRACT ALGEBRAIC bootstrap BootstrapMethod nametype NameAndType | | Dynamic ALGEBRAIC | | InvokeDynamic ALGEBRAIC | MemberRef ABSTRACT ALGEBRAIC owner ClassRef nametype NameAndType | | AbstractMethodRef ABSTRACT ALGEBRAIC | | | MethodRef ALGEBRAIC | | | InterfaceMethodRef ALGEBRAIC | | FieldRef ALGEBRAIC | Loadable ABSTRACT ALGEBRAIC | | ConstantDoubleValue ABSTRACT ALGEBRAIC | | | ConstantLong ALGEBRAIC value Long | | | ConstantDouble ALGEBRAIC value Double | | ConstantSingleValue ABSTRACT ALGEBRAIC | | | ConstantString ALGEBRAIC value ConstantUTF8 | | | ConstantFloat ALGEBRAIC value Float | | | ConstantInteger ALGEBRAIC value Integer | | MethodType ALGEBRAIC descriptor ConstantUTF8 | | ClassRef ALGEBRAIC name ConstantUTF8 | | MethodHandle ALGEBRAIC kind HandleKind reference MemberRef | NameAndType ALGEBRAIC name ConstantUTF8 descriptor ConstantUTF8 | ConstantUTF8 ALGEBRAIC text string Name ABSTRACT ALGEBRAIC | ExplicitName ALGEBRAIC id Id | ImplicitName ALGEBRAIC id Anonymity Variable ALGEBRAIC type Type name Name END MODEL // LLJava