module Hydra.Impl.Haskell.Sources.Ext.Java.Syntax where
import Hydra.Impl.Haskell.Sources.Core
import Hydra.All
import Hydra.Impl.Haskell.Dsl.Types as Types
import Hydra.Impl.Haskell.Dsl.Standard
javaSyntaxModule :: Module Meta
javaSyntaxModule :: Module Meta
javaSyntaxModule = forall m.
Namespace -> [Element m] -> [Module m] -> Maybe String -> Module m
Module Namespace
ns [Element Meta]
elements [] forall a b. (a -> b) -> a -> b
$
forall a. a -> Maybe a
Just (String
"A Java syntax module. Based on the Oracle Java SE 12 BNF:\n" forall a. [a] -> [a] -> [a]
++
String
" https://docs.oracle.com/javase/specs/jls/se12/html/jls-19.html\n" forall a. [a] -> [a] -> [a]
++
String
"Note: all *WithComments types were added manually, rather than derived from the BNF, which does not allow for comments.")
where
ns :: Namespace
ns = String -> Namespace
Namespace String
"hydra/ext/java/syntax"
def :: String -> Type m -> Element m
def = forall m. Namespace -> String -> Type m -> Element m
datatype Namespace
ns
java :: String -> Type m
java = forall m. Namespace -> String -> Type m
nsref Namespace
ns
elements :: [Element Meta]
elements = [
forall {m}. String -> Type m -> Element m
def String
"Identifier" forall m. Type m
string,
forall {m}. String -> Type m -> Element m
def String
"TypeIdentifier" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Identifier",
forall {m}. String -> Type m -> Element m
def String
"Literal" forall a b. (a -> b) -> a -> b
$
forall m. [FieldType m] -> Type m
union [
String
"null"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"integer"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"IntegerLiteral",
String
"floatingPoint"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"FloatingPointLiteral",
String
"boolean"forall m. String -> Type m -> FieldType m
>: forall m. Type m
boolean,
String
"character"forall m. String -> Type m -> FieldType m
>: forall m. Type m
uint16,
String
"string"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"StringLiteral"],
forall {m}. String -> Type m -> Element m
def String
"IntegerLiteral" forall a b. (a -> b) -> a -> b
$
String -> Type Meta -> Type Meta
doc String
"Note: this is an approximation which ignores encoding"
forall m. Type m
bigint,
forall {m}. String -> Type m -> Element m
def String
"FloatingPointLiteral" forall a b. (a -> b) -> a -> b
$
String -> Type Meta -> Type Meta
doc String
"Note: this is an approximation which ignores encoding"
forall m. Type m
bigfloat,
forall {m}. String -> Type m -> Element m
def String
"StringLiteral" forall a b. (a -> b) -> a -> b
$
String -> Type Meta -> Type Meta
doc String
"Note: this is an approximation which ignores encoding"
forall m. Type m
string,
forall {m}. String -> Type m -> Element m
def String
"Type" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"primitive"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PrimitiveTypeWithAnnotations",
String
"reference"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ReferenceType"],
forall {m}. String -> Type m -> Element m
def String
"PrimitiveTypeWithAnnotations" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PrimitiveType",
String
"annotations"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Annotation"],
forall {m}. String -> Type m -> Element m
def String
"PrimitiveType" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"numeric"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"NumericType",
String
"boolean"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"NumericType" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"integral"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"IntegralType",
String
"floatingPoint"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"FloatingPointType"],
forall {m}. String -> Type m -> Element m
def String
"IntegralType" forall a b. (a -> b) -> a -> b
$ forall m. [String] -> Type m
enum [
String
"byte", String
"short", String
"int", String
"long", String
"char"],
forall {m}. String -> Type m -> Element m
def String
"FloatingPointType" forall a b. (a -> b) -> a -> b
$ forall m. [String] -> Type m
enum [
String
"float", String
"double"],
forall {m}. String -> Type m -> Element m
def String
"ReferenceType" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"classOrInterface"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassOrInterfaceType",
String
"variable"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeVariable",
String
"array"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ArrayType"],
forall {m}. String -> Type m -> Element m
def String
"ClassOrInterfaceType" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"class"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassType",
String
"interface"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"InterfaceType"],
forall {m}. String -> Type m -> Element m
def String
"ClassType" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"annotations"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Annotation",
String
"qualifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassTypeQualifier",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeIdentifier",
String
"arguments"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeArgument"],
forall {m}. String -> Type m -> Element m
def String
"ClassTypeQualifier" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"none"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"package"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PackageName",
String
"parent"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassOrInterfaceType"],
forall {m}. String -> Type m -> Element m
def String
"InterfaceType" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ClassType",
forall {m}. String -> Type m -> Element m
def String
"TypeVariable" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"annotations"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Annotation",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeIdentifier"],
forall {m}. String -> Type m -> Element m
def String
"ArrayType" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"dims"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Dims",
String
"variant"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ArrayType.Variant"],
forall {m}. String -> Type m -> Element m
def String
"ArrayType.Variant" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"primitive"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PrimitiveTypeWithAnnotations",
String
"classOrInterface"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassOrInterfaceType",
String
"variable"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeVariable"],
forall {m}. String -> Type m -> Element m
def String
"Dims" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Annotation",
forall {m}. String -> Type m -> Element m
def String
"TypeParameter" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeParameterModifier",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeIdentifier",
String
"bound"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeBound"],
forall {m}. String -> Type m -> Element m
def String
"TypeParameterModifier" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Annotation",
forall {m}. String -> Type m -> Element m
def String
"TypeBound" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"variable"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeVariable",
String
"classOrInterface"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeBound.ClassOrInterface"],
forall {m}. String -> Type m -> Element m
def String
"TypeBound.ClassOrInterface" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassOrInterfaceType",
String
"additional"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"AdditionalBound"],
forall {m}. String -> Type m -> Element m
def String
"AdditionalBound" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"InterfaceType",
forall {m}. String -> Type m -> Element m
def String
"TypeArgument" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"reference"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ReferenceType",
String
"wildcard"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Wildcard"],
forall {m}. String -> Type m -> Element m
def String
"Wildcard" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"annotations"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Annotation",
String
"wildcard"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"WildcardBounds"],
forall {m}. String -> Type m -> Element m
def String
"WildcardBounds" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"extends"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ReferenceType",
String
"super"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ReferenceType"],
forall {m}. String -> Type m -> Element m
def String
"ModuleName" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier",
String
"name"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ModuleName"],
forall {m}. String -> Type m -> Element m
def String
"PackageName" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Identifier",
forall {m}. String -> Type m -> Element m
def String
"TypeName" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeIdentifier",
String
"qualifier"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"PackageOrTypeName"],
forall {m}. String -> Type m -> Element m
def String
"ExpressionName" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"qualifier"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"AmbiguousName",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier"],
forall {m}. String -> Type m -> Element m
def String
"MethodName" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Identifier",
forall {m}. String -> Type m -> Element m
def String
"PackageOrTypeName" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Identifier",
forall {m}. String -> Type m -> Element m
def String
"AmbiguousName" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Identifier",
forall {m}. String -> Type m -> Element m
def String
"CompilationUnit" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"ordinary"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"OrdinaryCompilationUnit",
String
"modular"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ModularCompilationUnit"],
forall {m}. String -> Type m -> Element m
def String
"OrdinaryCompilationUnit" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"package"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"PackageDeclaration",
String
"imports"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ImportDeclaration",
String
"types"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeDeclarationWithComments"],
forall {m}. String -> Type m -> Element m
def String
"ModularCompilationUnit" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"imports"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ImportDeclaration",
String
"module"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ModuleDeclaration"],
forall {m}. String -> Type m -> Element m
def String
"PackageDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"PackageModifier",
String
"identifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Identifier"],
forall {m}. String -> Type m -> Element m
def String
"PackageModifier" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Annotation",
forall {m}. String -> Type m -> Element m
def String
"ImportDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"singleType"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"SingleTypeImportDeclaration",
String
"typeImportOnDemand"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeImportOnDemandDeclaration",
String
"singleStaticImport"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"SingleStaticImportDeclaration",
String
"staticImportOnDemand"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"StaticImportOnDemandDeclaration"],
forall {m}. String -> Type m -> Element m
def String
"SingleTypeImportDeclaration" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeName",
forall {m}. String -> Type m -> Element m
def String
"TypeImportOnDemandDeclaration" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"PackageOrTypeName",
forall {m}. String -> Type m -> Element m
def String
"SingleStaticImportDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"typeName"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeName",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier"],
forall {m}. String -> Type m -> Element m
def String
"StaticImportOnDemandDeclaration" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeName",
forall {m}. String -> Type m -> Element m
def String
"TypeDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"class"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassDeclaration",
String
"interface"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"InterfaceDeclaration",
String
"none"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"TypeDeclarationWithComments" forall a b. (a -> b) -> a -> b
$
forall m. [FieldType m] -> Type m
record [
String
"value"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeDeclaration",
String
"comments"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall m. Type m
string],
forall {m}. String -> Type m -> Element m
def String
"ModuleDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"annotations"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Annotation",
String
"open"forall m. String -> Type m -> FieldType m
>: forall m. Type m
boolean,
String
"identifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Identifier",
String
"directives"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ModuleDirective"],
forall {m}. String -> Type m -> Element m
def String
"ModuleDirective" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"requires"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ModuleDirective.Requires",
String
"exports"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ModuleDirective.ExportsOrOpens",
String
"opens"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ModuleDirective.ExportsOrOpens",
String
"uses"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeName",
String
"provides"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ModuleDirective.Provides"],
forall {m}. String -> Type m -> Element m
def String
"ModuleDirective.Requires" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"RequiresModifier",
String
"module"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ModuleName"],
forall {m}. String -> Type m -> Element m
def String
"ModuleDirective.ExportsOrOpens" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"package"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PackageName",
String
"modules"forall m. String -> Type m -> FieldType m
>:
String -> Type Meta -> Type Meta
doc String
"At least one module" forall a b. (a -> b) -> a -> b
$
forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ModuleName"],
forall {m}. String -> Type m -> Element m
def String
"ModuleDirective.Provides" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"to"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeName",
String
"with"forall m. String -> Type m -> FieldType m
>:
String -> Type Meta -> Type Meta
doc String
"At least one type" forall a b. (a -> b) -> a -> b
$
forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeName"],
forall {m}. String -> Type m -> Element m
def String
"RequiresModifier" forall a b. (a -> b) -> a -> b
$ forall m. [String] -> Type m
enum [
String
"transitive", String
"static"],
forall {m}. String -> Type m -> Element m
def String
"ClassDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"normal"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"NormalClassDeclaration",
String
"enum"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"EnumDeclaration"],
forall {m}. String -> Type m -> Element m
def String
"NormalClassDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ClassModifier",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeIdentifier",
String
"parameters"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeParameter",
String
"extends"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ClassType",
String
"implements"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"InterfaceType",
String
"body"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassBody"],
forall {m}. String -> Type m -> Element m
def String
"ClassModifier" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"annotation"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Annotation",
String
"public"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"protected"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"private"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"abstract"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"static"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"final"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"strictfp"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"ClassBody" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ClassBodyDeclarationWithComments",
forall {m}. String -> Type m -> Element m
def String
"ClassBodyDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"classMember"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassMemberDeclaration",
String
"instanceInitializer"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"InstanceInitializer",
String
"staticInitializer"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"StaticInitializer",
String
"constructorDeclaration"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ConstructorDeclaration"],
forall {m}. String -> Type m -> Element m
def String
"ClassBodyDeclarationWithComments" forall a b. (a -> b) -> a -> b
$
forall m. [FieldType m] -> Type m
record [
String
"value"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassBodyDeclaration",
String
"comments"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall m. Type m
string],
forall {m}. String -> Type m -> Element m
def String
"ClassMemberDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"field"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"FieldDeclaration",
String
"method"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodDeclaration",
String
"class"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassDeclaration",
String
"interface"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"InterfaceDeclaration",
String
"none"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"FieldDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"FieldModifier",
String
"unannType"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnannType",
String
"variableDeclarators"forall m. String -> Type m -> FieldType m
>: Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"VariableDeclarator"],
forall {m}. String -> Type m -> Element m
def String
"FieldModifier" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"annotation"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Annotation",
String
"public"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"protected"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"private"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"static"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"final"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"transient"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"volatile"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"VariableDeclarator" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"id"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"VariableDeclaratorId",
String
"initializer"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"VariableInitializer"],
forall {m}. String -> Type m -> Element m
def String
"VariableDeclaratorId" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier",
String
"dims"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Dims"],
forall {m}. String -> Type m -> Element m
def String
"VariableInitializer" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"expression"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Expression",
String
"arrayInitializer"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ArrayInitializer"],
forall {m}. String -> Type m -> Element m
def String
"UnannType" forall a b. (a -> b) -> a -> b
$
String -> Type Meta -> Type Meta
doc String
"A Type which does not allow annotations" forall a b. (a -> b) -> a -> b
$
forall {m}. String -> Type m
java String
"Type",
forall {m}. String -> Type m -> Element m
def String
"UnannClassType" forall a b. (a -> b) -> a -> b
$
String -> Type Meta -> Type Meta
doc String
"A ClassType which does not allow annotations" forall a b. (a -> b) -> a -> b
$
forall {m}. String -> Type m
java String
"ClassType",
forall {m}. String -> Type m -> Element m
def String
"MethodDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"annotations"forall m. String -> Type m -> FieldType m
>:
String -> Type Meta -> Type Meta
doc String
"Note: simple methods cannot have annotations" forall a b. (a -> b) -> a -> b
$
forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Annotation",
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"MethodModifier",
String
"header"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodHeader",
String
"body"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodBody"],
forall {m}. String -> Type m -> Element m
def String
"MethodModifier" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"annotation"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Annotation",
String
"public"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"protected"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"private"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"abstract"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"static"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"final"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"synchronized"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"native"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"strictfb"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"MethodHeader" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"parameters"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeParameter",
String
"result"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Result",
String
"declarator"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodDeclarator",
String
"throws"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Throws"],
forall {m}. String -> Type m -> Element m
def String
"Result" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnannType",
String
"void"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"MethodDeclarator" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier",
String
"receiverParameter"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ReceiverParameter",
String
"formalParameters"forall m. String -> Type m -> FieldType m
>: Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"FormalParameter"],
forall {m}. String -> Type m -> Element m
def String
"ReceiverParameter" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"annotations"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Annotation",
String
"unannType"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnannType",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Identifier"],
forall {m}. String -> Type m -> Element m
def String
"FormalParameter" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"simple"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"FormalParameter.Simple",
String
"variableArity"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"VariableArityParameter"],
forall {m}. String -> Type m -> Element m
def String
"FormalParameter.Simple" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"VariableModifier",
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnannType",
String
"id"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"VariableDeclaratorId"],
forall {m}. String -> Type m -> Element m
def String
"VariableArityParameter" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"VariableModifier",
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnannType",
String
"annotations"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Annotation",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier"],
forall {m}. String -> Type m -> Element m
def String
"VariableModifier" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"annotation"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Annotation",
String
"final"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"Throws" forall a b. (a -> b) -> a -> b
$ Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ExceptionType",
forall {m}. String -> Type m -> Element m
def String
"ExceptionType" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"class"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassType",
String
"variable"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeVariable"],
forall {m}. String -> Type m -> Element m
def String
"MethodBody" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"block"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Block",
String
"none"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"InstanceInitializer" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Block",
forall {m}. String -> Type m -> Element m
def String
"StaticInitializer" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Block",
forall {m}. String -> Type m -> Element m
def String
"ConstructorDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ConstructorModifier",
String
"constructor"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ConstructorDeclarator",
String
"throws"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Throws",
String
"body"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ConstructorBody"],
forall {m}. String -> Type m -> Element m
def String
"ConstructorModifier" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"annotation"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Annotation",
String
"public"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"protected"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"private"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"ConstructorDeclarator" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"parameters"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeParameter",
String
"name"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"SimpleTypeName",
String
"receiverParameter"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ReceiverParameter",
String
"formalParameters"forall m. String -> Type m -> FieldType m
>: Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"FormalParameter"],
forall {m}. String -> Type m -> Element m
def String
"SimpleTypeName" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeIdentifier",
forall {m}. String -> Type m -> Element m
def String
"ConstructorBody" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"invocation"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ExplicitConstructorInvocation",
String
"statements"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"BlockStatement"],
forall {m}. String -> Type m -> Element m
def String
"ExplicitConstructorInvocation" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"typeArguments"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeArgument",
String
"arguments"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Expression",
String
"variant"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ExplicitConstructorInvocation.Variant"],
forall {m}. String -> Type m -> Element m
def String
"ExplicitConstructorInvocation.Variant" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"this"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"super"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ExpressionName",
String
"primary"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Primary"],
forall {m}. String -> Type m -> Element m
def String
"EnumDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ClassModifier",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeIdentifier",
String
"implements"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"InterfaceType",
String
"body"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"EnumBody"],
forall {m}. String -> Type m -> Element m
def String
"EnumBody" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"EnumBody.Element",
forall {m}. String -> Type m -> Element m
def String
"EnumBody.Element" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"constants"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"EnumConstant",
String
"bodyDeclarations"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ClassBodyDeclaration"],
forall {m}. String -> Type m -> Element m
def String
"EnumConstant" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"EnumConstantModifier",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier",
String
"arguments"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Expression",
String
"body"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ClassBody"],
forall {m}. String -> Type m -> Element m
def String
"EnumConstantModifier" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Annotation",
forall {m}. String -> Type m -> Element m
def String
"InterfaceDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"normalInterface"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"NormalInterfaceDeclaration",
String
"annotationType"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"AnnotationTypeDeclaration"],
forall {m}. String -> Type m -> Element m
def String
"NormalInterfaceDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"InterfaceModifier",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeIdentifier",
String
"parameters"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeParameter",
String
"extends"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"InterfaceType",
String
"body"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"InterfaceBody"],
forall {m}. String -> Type m -> Element m
def String
"InterfaceModifier" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"annotation"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Annotation",
String
"public"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"protected"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"private"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"abstract"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"static"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"strictfb"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"InterfaceBody" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"InterfaceMemberDeclaration",
forall {m}. String -> Type m -> Element m
def String
"InterfaceMemberDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"constant"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ConstantDeclaration",
String
"interfaceMethod"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"InterfaceMethodDeclaration",
String
"class"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassDeclaration",
String
"interface"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"InterfaceDeclaration"],
forall {m}. String -> Type m -> Element m
def String
"ConstantDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ConstantModifier",
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnannType",
String
"variables"forall m. String -> Type m -> FieldType m
>: Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"VariableDeclarator"],
forall {m}. String -> Type m -> Element m
def String
"ConstantModifier" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"annotation"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Annotation",
String
"public"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"static"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"final"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"InterfaceMethodDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"InterfaceMethodModifier",
String
"header"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodHeader",
String
"body"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodBody"],
forall {m}. String -> Type m -> Element m
def String
"InterfaceMethodModifier" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"annotation"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Annotation",
String
"public"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"private"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"abstract"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"default"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"static"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"strictfp"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"AnnotationTypeDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"InterfaceModifier",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeIdentifier",
String
"body"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"AnnotationTypeBody"],
forall {m}. String -> Type m -> Element m
def String
"AnnotationTypeBody" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"AnnotationTypeMemberDeclaration",
forall {m}. String -> Type m -> Element m
def String
"AnnotationTypeMemberDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"annotationType"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"AnnotationTypeElementDeclaration",
String
"constant"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ConstantDeclaration",
String
"class"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassDeclaration",
String
"interface"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"InterfaceDeclaration"],
forall {m}. String -> Type m -> Element m
def String
"AnnotationTypeElementDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"AnnotationTypeElementModifier",
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnannType",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier",
String
"dims"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Dims",
String
"default"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"DefaultValue"],
forall {m}. String -> Type m -> Element m
def String
"AnnotationTypeElementModifier" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"public"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Annotation",
String
"abstract"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"DefaultValue" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ElementValue",
forall {m}. String -> Type m -> Element m
def String
"Annotation" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"normal"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"NormalAnnotation",
String
"marker"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MarkerAnnotation",
String
"singleElement"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"SingleElementAnnotation"],
forall {m}. String -> Type m -> Element m
def String
"NormalAnnotation" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"typeName"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeName",
String
"pairs"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ElementValuePair"],
forall {m}. String -> Type m -> Element m
def String
"ElementValuePair" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"key"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier",
String
"value"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ElementValue"],
forall {m}. String -> Type m -> Element m
def String
"ElementValue" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"conditionalExpression"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ConditionalExpression",
String
"elementValueArrayInitializer"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ElementValueArrayInitializer",
String
"annotation"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Annotation"],
forall {m}. String -> Type m -> Element m
def String
"ElementValueArrayInitializer" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ElementValue",
forall {m}. String -> Type m -> Element m
def String
"MarkerAnnotation" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeName",
forall {m}. String -> Type m -> Element m
def String
"SingleElementAnnotation" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"name"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeName",
String
"value"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ElementValue"],
forall {m}. String -> Type m -> Element m
def String
"ArrayInitializer" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"VariableInitializer",
forall {m}. String -> Type m -> Element m
def String
"Block" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"BlockStatement",
forall {m}. String -> Type m -> Element m
def String
"BlockStatement" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"localVariableDeclaration"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"LocalVariableDeclarationStatement",
String
"class"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassDeclaration",
String
"statement"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Statement"],
forall {m}. String -> Type m -> Element m
def String
"LocalVariableDeclarationStatement" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"LocalVariableDeclaration",
forall {m}. String -> Type m -> Element m
def String
"LocalVariableDeclaration" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"VariableModifier",
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"LocalVariableType",
String
"declarators"forall m. String -> Type m -> FieldType m
>: Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"VariableDeclarator"],
forall {m}. String -> Type m -> Element m
def String
"LocalVariableType" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnannType",
String
"var"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"Statement" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"withoutTrailing"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"StatementWithoutTrailingSubstatement",
String
"labeled"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"LabeledStatement",
String
"ifThen"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"IfThenStatement",
String
"ifThenElse"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"IfThenElseStatement",
String
"while"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"WhileStatement",
String
"for"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ForStatement"],
forall {m}. String -> Type m -> Element m
def String
"StatementNoShortIf" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"withoutTrailing"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"StatementWithoutTrailingSubstatement",
String
"labeled"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"LabeledStatementNoShortIf",
String
"ifThenElse"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"IfThenElseStatementNoShortIf",
String
"while"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"WhileStatementNoShortIf",
String
"for"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ForStatementNoShortIf"],
forall {m}. String -> Type m -> Element m
def String
"StatementWithoutTrailingSubstatement" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"block"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Block",
String
"empty"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"EmptyStatement",
String
"expression"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ExpressionStatement",
String
"assert"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"AssertStatement",
String
"switch"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"SwitchStatement",
String
"do"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"DoStatement",
String
"break"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"BreakStatement",
String
"continue"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ContinueStatement",
String
"return"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ReturnStatement",
String
"synchronized"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"SynchronizedStatement",
String
"throw"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ThrowStatement",
String
"try"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TryStatement"],
forall {m}. String -> Type m -> Element m
def String
"EmptyStatement" forall m. Type m
unit,
forall {m}. String -> Type m -> Element m
def String
"LabeledStatement" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier",
String
"statement"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Statement"],
forall {m}. String -> Type m -> Element m
def String
"LabeledStatementNoShortIf" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier",
String
"statement"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"StatementNoShortIf"],
forall {m}. String -> Type m -> Element m
def String
"ExpressionStatement" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"StatementExpression",
forall {m}. String -> Type m -> Element m
def String
"StatementExpression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"assignment"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Assignment",
String
"preIncrement"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PreIncrementExpression",
String
"preDecrement"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PreDecrementExpression",
String
"postIncrement"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PostIncrementExpression",
String
"postDecrement"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PostDecrementExpression",
String
"methodInvocation"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodInvocation",
String
"classInstanceCreation"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassInstanceCreationExpression"],
forall {m}. String -> Type m -> Element m
def String
"IfThenStatement" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"expression"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Expression",
String
"statement"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Statement"],
forall {m}. String -> Type m -> Element m
def String
"IfThenElseStatement" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"cond"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Expression",
String
"then"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"StatementNoShortIf",
String
"else"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Statement"],
forall {m}. String -> Type m -> Element m
def String
"IfThenElseStatementNoShortIf" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"cond"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Expression",
String
"then"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"StatementNoShortIf",
String
"else"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"StatementNoShortIf"],
forall {m}. String -> Type m -> Element m
def String
"AssertStatement" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"single"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Expression",
String
"pair"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"AssertStatement.Pair"],
forall {m}. String -> Type m -> Element m
def String
"AssertStatement.Pair" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"first"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Expression",
String
"second"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Expression"],
forall {m}. String -> Type m -> Element m
def String
"SwitchStatement" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"cond"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Expression",
String
"block"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"SwitchBlock"],
forall {m}. String -> Type m -> Element m
def String
"SwitchBlock" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"SwitchBlock.Pair",
forall {m}. String -> Type m -> Element m
def String
"SwitchBlock.Pair" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"statements"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"SwitchBlockStatementGroup",
String
"labels"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"SwitchLabel"],
forall {m}. String -> Type m -> Element m
def String
"SwitchBlockStatementGroup" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"labels"forall m. String -> Type m -> FieldType m
>: Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"SwitchLabel",
String
"statements"forall m. String -> Type m -> FieldType m
>: Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"BlockStatement"],
forall {m}. String -> Type m -> Element m
def String
"SwitchLabel" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"constant"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ConstantExpression",
String
"enumConstant"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"EnumConstantName",
String
"default"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"EnumConstantName" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Identifier",
forall {m}. String -> Type m -> Element m
def String
"WhileStatement" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"cond"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Expression",
String
"body"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Statement"],
forall {m}. String -> Type m -> Element m
def String
"WhileStatementNoShortIf" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"cond"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Expression",
String
"body"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"StatementNoShortIf"],
forall {m}. String -> Type m -> Element m
def String
"DoStatement" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"body"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Statement",
String
"conde"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Expression"],
forall {m}. String -> Type m -> Element m
def String
"ForStatement" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"basic"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"BasicForStatement",
String
"enhanced"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"EnhancedForStatement"],
forall {m}. String -> Type m -> Element m
def String
"ForStatementNoShortIf" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"basic"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"BasicForStatementNoShortIf",
String
"enhanced"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"EnhancedForStatementNoShortIf"],
forall {m}. String -> Type m -> Element m
def String
"BasicForStatement" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"cond"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ForCond",
String
"body"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Statement"],
forall {m}. String -> Type m -> Element m
def String
"ForCond" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"init"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ForInit",
String
"cond"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Expression",
String
"update"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ForUpdate"],
forall {m}. String -> Type m -> Element m
def String
"BasicForStatementNoShortIf" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"cond"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ForCond",
String
"body"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"StatementNoShortIf"],
forall {m}. String -> Type m -> Element m
def String
"ForInit" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"statements"forall m. String -> Type m -> FieldType m
>: Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"StatementExpression",
String
"localVariable"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"LocalVariableDeclaration"],
forall {m}. String -> Type m -> Element m
def String
"ForUpdate" forall a b. (a -> b) -> a -> b
$ Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"StatementExpression",
forall {m}. String -> Type m -> Element m
def String
"EnhancedForStatement" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"cond"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"EnhancedForCond",
String
"body"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Statement"],
forall {m}. String -> Type m -> Element m
def String
"EnhancedForCond" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"VariableModifier",
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"LocalVariableType",
String
"id"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"VariableDeclaratorId",
String
"expression"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Expression"],
forall {m}. String -> Type m -> Element m
def String
"EnhancedForStatementNoShortIf" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"cond"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"EnhancedForCond",
String
"body"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"StatementNoShortIf"],
forall {m}. String -> Type m -> Element m
def String
"BreakStatement" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Identifier",
forall {m}. String -> Type m -> Element m
def String
"ContinueStatement" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Identifier",
forall {m}. String -> Type m -> Element m
def String
"ReturnStatement" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Expression",
forall {m}. String -> Type m -> Element m
def String
"ThrowStatement" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Expression",
forall {m}. String -> Type m -> Element m
def String
"SynchronizedStatement" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"expression"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Expression",
String
"block"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Block"],
forall {m}. String -> Type m -> Element m
def String
"TryStatement" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"simple"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TryStatement.Simple",
String
"withFinally"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TryStatement.WithFinally",
String
"withResources"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TryWithResourcesStatement"],
forall {m}. String -> Type m -> Element m
def String
"TryStatement.Simple" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"block"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Block",
String
"catches"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Catches"],
forall {m}. String -> Type m -> Element m
def String
"TryStatement.WithFinally" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"block"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Block",
String
"catches"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Catches",
String
"finally"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Finally"],
forall {m}. String -> Type m -> Element m
def String
"Catches" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"CatchClause",
forall {m}. String -> Type m -> Element m
def String
"CatchClause" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"parameter"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"CatchFormalParameter",
String
"block"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Block"],
forall {m}. String -> Type m -> Element m
def String
"CatchFormalParameter" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"VariableModifier",
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"CatchType",
String
"id"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"VariableDeclaratorId"],
forall {m}. String -> Type m -> Element m
def String
"CatchType" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnannClassType",
String
"types"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ClassType"],
forall {m}. String -> Type m -> Element m
def String
"Finally" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Block",
forall {m}. String -> Type m -> Element m
def String
"TryWithResourcesStatement" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"resourceSpecification"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ResourceSpecification",
String
"block"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Block",
String
"catches"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Catches",
String
"finally"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Finally"],
forall {m}. String -> Type m -> Element m
def String
"ResourceSpecification" forall a b. (a -> b) -> a -> b
$ forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Resource",
forall {m}. String -> Type m -> Element m
def String
"Resource" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"local"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Resource.Local",
String
"variable"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"VariableAccess"],
forall {m}. String -> Type m -> Element m
def String
"Resource.Local" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"VariableModifier",
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"LocalVariableType",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier",
String
"expression"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Expression"],
forall {m}. String -> Type m -> Element m
def String
"VariableAccess" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"expressionName"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ExpressionName",
String
"fieldAccess"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"FieldAccess"],
forall {m}. String -> Type m -> Element m
def String
"Primary" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"noNewArray"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PrimaryNoNewArray",
String
"arrayCreation"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ArrayCreationExpression"],
forall {m}. String -> Type m -> Element m
def String
"PrimaryNoNewArray" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"literal"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Literal",
String
"classLiteral"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassLiteral",
String
"this"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"dotThis"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeName",
String
"parens"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Expression",
String
"classInstance"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassInstanceCreationExpression",
String
"fieldAccess"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"FieldAccess",
String
"arrayAccess"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ArrayAccess",
String
"methodInvocation"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodInvocation",
String
"methodReference"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodReference"],
forall {m}. String -> Type m -> Element m
def String
"ClassLiteral" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeNameArray",
String
"numericType"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"NumericTypeArray",
String
"boolean"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"BooleanArray",
String
"void"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"TypeNameArray" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"simple"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeName",
String
"array"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeNameArray"],
forall {m}. String -> Type m -> Element m
def String
"NumericTypeArray" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"simple"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"NumericType",
String
"array"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"NumericTypeArray"],
forall {m}. String -> Type m -> Element m
def String
"BooleanArray" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"simple"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"array"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"BooleanArray"],
forall {m}. String -> Type m -> Element m
def String
"ClassInstanceCreationExpression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"qualifier"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ClassInstanceCreationExpression.Qualifier",
String
"expression"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnqualifiedClassInstanceCreationExpression"],
forall {m}. String -> Type m -> Element m
def String
"ClassInstanceCreationExpression.Qualifier" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"expression"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ExpressionName",
String
"primary"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Primary"],
forall {m}. String -> Type m -> Element m
def String
"UnqualifiedClassInstanceCreationExpression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"typeArguments"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeArgument",
String
"classOrInterface"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassOrInterfaceTypeToInstantiate",
String
"arguments"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Expression",
String
"body"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ClassBody"],
forall {m}. String -> Type m -> Element m
def String
"ClassOrInterfaceTypeToInstantiate" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"identifiers"forall m. String -> Type m -> FieldType m
>: Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"AnnotatedIdentifier",
String
"typeArguments"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeArgumentsOrDiamond"],
forall {m}. String -> Type m -> Element m
def String
"AnnotatedIdentifier" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"annotations"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Annotation",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier"],
forall {m}. String -> Type m -> Element m
def String
"TypeArgumentsOrDiamond" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"arguments"forall m. String -> Type m -> FieldType m
>: Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeArgument",
String
"diamond"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"FieldAccess" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"qualifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"FieldAccess.Qualifier",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier"],
forall {m}. String -> Type m -> Element m
def String
"FieldAccess.Qualifier" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"primary"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Primary",
String
"super"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"typed"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeName"],
forall {m}. String -> Type m -> Element m
def String
"ArrayAccess" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"expression"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Expression",
String
"variant"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ArrayAccess.Variant"],
forall {m}. String -> Type m -> Element m
def String
"ArrayAccess.Variant" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"name"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ExpressionName",
String
"primary"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PrimaryNoNewArray"],
forall {m}. String -> Type m -> Element m
def String
"MethodInvocation" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"header"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodInvocation.Header",
String
"arguments"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Expression"],
forall {m}. String -> Type m -> Element m
def String
"MethodInvocation.Header" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"simple"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodName",
String
"complex"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodInvocation.Complex"],
forall {m}. String -> Type m -> Element m
def String
"MethodInvocation.Complex" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"variant"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodInvocation.Variant",
String
"typeArguments"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeArgument",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier"],
forall {m}. String -> Type m -> Element m
def String
"MethodInvocation.Variant" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeName",
String
"expression"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ExpressionName",
String
"primary"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Primary",
String
"super"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit,
String
"typeSuper"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"TypeName"],
forall {m}. String -> Type m -> Element m
def String
"MethodReference" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"expression"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodReference.Expression",
String
"primary"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodReference.Primary",
String
"referenceType"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
javaString
"MethodReference.ReferenceType",
String
"super"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodReference.Super",
String
"new"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodReference.New",
String
"array"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MethodReference.Array"],
forall {m}. String -> Type m -> Element m
def String
"MethodReference.Expression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"name"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ExpressionName",
String
"typeArguments"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeArgument",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier"],
forall {m}. String -> Type m -> Element m
def String
"MethodReference.Primary" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"primary"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Primary",
String
"typeArguments"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeArgument",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier"],
forall {m}. String -> Type m -> Element m
def String
"MethodReference.ReferenceType" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"referenceType"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ReferenceType",
String
"typeArguments"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeArgument",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier"],
forall {m}. String -> Type m -> Element m
def String
"MethodReference.Super" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"typeArguments"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeArgument",
String
"identifier"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier",
String
"super"forall m. String -> Type m -> FieldType m
>: forall m. Type m
boolean],
forall {m}. String -> Type m -> Element m
def String
"MethodReference.New" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"classType"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassType",
String
"typeArguments"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"TypeArgument"],
forall {m}. String -> Type m -> Element m
def String
"MethodReference.Array" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ArrayType",
forall {m}. String -> Type m -> Element m
def String
"ArrayCreationExpression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"primitive"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ArrayCreationExpression.Primitive",
String
"classOrInterface"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ArrayCreationExpression.ClassOrInterface",
String
"primitiveArray"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ArrayCreationExpression.PrimitiveArray",
String
"classOrInterfaceArray"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ArrayCreationExpression.ClassOrInterfaceArray"],
forall {m}. String -> Type m -> Element m
def String
"ArrayCreationExpression.Primitive" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PrimitiveTypeWithAnnotations",
String
"dimExprs"forall m. String -> Type m -> FieldType m
>: Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"DimExpr",
String
"dims"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Dims"],
forall {m}. String -> Type m -> Element m
def String
"ArrayCreationExpression.ClassOrInterface" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassOrInterfaceType",
String
"dimExprs"forall m. String -> Type m -> FieldType m
>: Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"DimExpr",
String
"dims"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Dims"],
forall {m}. String -> Type m -> Element m
def String
"ArrayCreationExpression.PrimitiveArray" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PrimitiveTypeWithAnnotations",
String
"dims"forall m. String -> Type m -> FieldType m
>: Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Dims",
String
"array"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ArrayInitializer"],
forall {m}. String -> Type m -> Element m
def String
"ArrayCreationExpression.ClassOrInterfaceArray" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ClassOrInterfaceType",
String
"dims"forall m. String -> Type m -> FieldType m
>: Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Dims",
String
"array"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ArrayInitializer"],
forall {m}. String -> Type m -> Element m
def String
"DimExpr" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"annotations"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Annotation",
String
"expression"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
optional forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Expression"],
forall {m}. String -> Type m -> Element m
def String
"Expression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"lambda"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"LambdaExpression",
String
"assignment"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"AssignmentExpression"],
forall {m}. String -> Type m -> Element m
def String
"LambdaExpression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"parameters"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"LambdaParameters",
String
"body"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"LambdaBody"],
forall {m}. String -> Type m -> Element m
def String
"LambdaParameters" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"tuple"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"LambdaParameters",
String
"single"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Identifier"],
forall {m}. String -> Type m -> Element m
def String
"LambdaParameter" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"normal"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"LambdaParameter.Normal",
String
"variableArity"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"VariableArityParameter"],
forall {m}. String -> Type m -> Element m
def String
"LambdaParameter.Normal" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"modifiers"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"VariableModifier",
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"LambdaParameterType",
String
"id"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"VariableDeclaratorId"],
forall {m}. String -> Type m -> Element m
def String
"LambdaParameterType" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnannType",
String
"var"forall m. String -> Type m -> FieldType m
>: forall m. Type m
unit],
forall {m}. String -> Type m -> Element m
def String
"LambdaBody" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"expression"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Expression",
String
"block"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Block"],
forall {m}. String -> Type m -> Element m
def String
"AssignmentExpression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"conditional"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ConditionalExpression",
String
"assignment"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Assignment"],
forall {m}. String -> Type m -> Element m
def String
"Assignment" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"lhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"LeftHandSide",
String
"op"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"AssignmentOperator",
String
"expression"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Expression"],
forall {m}. String -> Type m -> Element m
def String
"LeftHandSide" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"expressionName"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ExpressionName",
String
"fieldAccess"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"FieldAccess",
String
"arrayAccess"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ArrayAccess"],
forall {m}. String -> Type m -> Element m
def String
"AssignmentOperator" forall a b. (a -> b) -> a -> b
$ forall m. [String] -> Type m
enum [
String
"simple", String
"times", String
"div", String
"mod", String
"plus", String
"minus",
String
"shiftLeft", String
"shiftRight", String
"shiftRightZeroFill", String
"and", String
"xor", String
"or"],
forall {m}. String -> Type m -> Element m
def String
"ConditionalExpression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"simple"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ConditionalOrExpression",
String
"ternaryCond"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ConditionalExpression.TernaryCond",
String
"ternaryLambda"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ConditionalExpression.TernaryLambda"],
forall {m}. String -> Type m -> Element m
def String
"ConditionalExpression.TernaryCond" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"cond"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ConditionalOrExpression",
String
"ifTrue"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Expression",
String
"ifFalse"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ConditionalExpression"],
forall {m}. String -> Type m -> Element m
def String
"ConditionalExpression.TernaryLambda" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"cond"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ConditionalOrExpression",
String
"ifTrue"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Expression",
String
"ifFalse"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"LambdaExpression"],
forall {m}. String -> Type m -> Element m
def String
"ConditionalOrExpression" forall a b. (a -> b) -> a -> b
$ Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ConditionalAndExpression",
forall {m}. String -> Type m -> Element m
def String
"ConditionalAndExpression" forall a b. (a -> b) -> a -> b
$ Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"InclusiveOrExpression",
forall {m}. String -> Type m -> Element m
def String
"InclusiveOrExpression" forall a b. (a -> b) -> a -> b
$ Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"ExclusiveOrExpression",
forall {m}. String -> Type m -> Element m
def String
"ExclusiveOrExpression" forall a b. (a -> b) -> a -> b
$ Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"AndExpression",
forall {m}. String -> Type m -> Element m
def String
"AndExpression" forall a b. (a -> b) -> a -> b
$ Type Meta -> Type Meta
nonemptyList forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"EqualityExpression",
forall {m}. String -> Type m -> Element m
def String
"EqualityExpression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"unary"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"RelationalExpression",
String
"equal"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"EqualityExpression.Binary",
String
"notEqual"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"EqualityExpression.Binary"],
forall {m}. String -> Type m -> Element m
def String
"EqualityExpression.Binary" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"lhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"EqualityExpression",
String
"rhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"RelationalExpression"],
forall {m}. String -> Type m -> Element m
def String
"RelationalExpression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"simple"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ShiftExpression",
String
"lessThan"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"RelationalExpression.LessThan",
String
"greaterThan"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"RelationalExpression.GreaterThan",
String
"lessThanEqual"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"RelationalExpression.LessThanEqual",
String
"greaterThanEqual"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"RelationalExpression.GreaterThanEqual",
String
"instanceof"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"RelationalExpression.InstanceOf"],
forall {m}. String -> Type m -> Element m
def String
"RelationalExpression.LessThan" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"lhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"RelationalExpression",
String
"rhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ShiftExpression"],
forall {m}. String -> Type m -> Element m
def String
"RelationalExpression.GreaterThan" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"lhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"RelationalExpression",
String
"rhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ShiftExpression"],
forall {m}. String -> Type m -> Element m
def String
"RelationalExpression.LessThanEqual" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"lhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"RelationalExpression",
String
"rhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ShiftExpression"],
forall {m}. String -> Type m -> Element m
def String
"RelationalExpression.GreaterThanEqual" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"lhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"RelationalExpression",
String
"rhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ShiftExpression"],
forall {m}. String -> Type m -> Element m
def String
"RelationalExpression.InstanceOf" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"lhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"RelationalExpression",
String
"rhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ReferenceType"],
forall {m}. String -> Type m -> Element m
def String
"ShiftExpression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"unary"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"AdditiveExpression",
String
"shiftLeft"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ShiftExpression.Binary",
String
"shiftRight"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ShiftExpression.Binary",
String
"shiftRightZeroFill"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ShiftExpression.Binary"],
forall {m}. String -> Type m -> Element m
def String
"ShiftExpression.Binary" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"lhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ShiftExpression",
String
"rhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"AdditiveExpression"],
forall {m}. String -> Type m -> Element m
def String
"AdditiveExpression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"unary"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MultiplicativeExpression",
String
"plus"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"AdditiveExpression.Binary",
String
"minus"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"AdditiveExpression.Binary"],
forall {m}. String -> Type m -> Element m
def String
"AdditiveExpression.Binary" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"lhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"AdditiveExpression",
String
"rhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MultiplicativeExpression"],
forall {m}. String -> Type m -> Element m
def String
"MultiplicativeExpression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"unary"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnaryExpression",
String
"times"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MultiplicativeExpression.Binary",
String
"divide"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MultiplicativeExpression.Binary",
String
"mod"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MultiplicativeExpression.Binary"],
forall {m}. String -> Type m -> Element m
def String
"MultiplicativeExpression.Binary" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"lhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"MultiplicativeExpression",
String
"rhs"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnaryExpression"],
forall {m}. String -> Type m -> Element m
def String
"UnaryExpression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"preIncrement"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PreIncrementExpression",
String
"preDecrement"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PreDecrementExpression",
String
"plus"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnaryExpression",
String
"minus"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnaryExpression",
String
"other"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnaryExpressionNotPlusMinus"],
forall {m}. String -> Type m -> Element m
def String
"PreIncrementExpression" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"UnaryExpression",
forall {m}. String -> Type m -> Element m
def String
"PreDecrementExpression" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"UnaryExpression",
forall {m}. String -> Type m -> Element m
def String
"UnaryExpressionNotPlusMinus" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"postfix"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PostfixExpression",
String
"tilde"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnaryExpression",
String
"not"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnaryExpression",
String
"cast"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"CastExpression"],
forall {m}. String -> Type m -> Element m
def String
"PostfixExpression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"primary"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"Primary",
String
"name"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ExpressionName",
String
"postIncrement"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PostIncrementExpression",
String
"postDecrement"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PostDecrementExpression"],
forall {m}. String -> Type m -> Element m
def String
"PostIncrementExpression" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"PostfixExpression",
forall {m}. String -> Type m -> Element m
def String
"PostDecrementExpression" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"PostfixExpression",
forall {m}. String -> Type m -> Element m
def String
"CastExpression" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
union [
String
"primitive"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"CastExpression.Primitive",
String
"notPlusMinus"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"CastExpression.NotPlusMinus",
String
"lambda"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"CastExpression.Lambda"],
forall {m}. String -> Type m -> Element m
def String
"CastExpression.Primitive" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"PrimitiveTypeWithAnnotations",
String
"expression"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnaryExpression"],
forall {m}. String -> Type m -> Element m
def String
"CastExpression.NotPlusMinus" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"refAndBounds"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"CastExpression.RefAndBounds",
String
"expression"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"UnaryExpression"],
forall {m}. String -> Type m -> Element m
def String
"CastExpression.Lambda" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"refAndBounds"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"CastExpression.RefAndBounds",
String
"expression"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"LambdaExpression"],
forall {m}. String -> Type m -> Element m
def String
"CastExpression.RefAndBounds" forall a b. (a -> b) -> a -> b
$ forall m. [FieldType m] -> Type m
record [
String
"type"forall m. String -> Type m -> FieldType m
>: forall {m}. String -> Type m
java String
"ReferenceType",
String
"bounds"forall m. String -> Type m -> FieldType m
>: forall m. Type m -> Type m
list forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"AdditionalBound"],
forall {m}. String -> Type m -> Element m
def String
"ConstantExpression" forall a b. (a -> b) -> a -> b
$ forall {m}. String -> Type m
java String
"Expression"]