UMinho Haskell Libraries (1.0)ContentsIndex
Language.Java.Syntax
Synopsis
data Type
= PrimitiveType PrimitiveType
| ReferenceType ReferenceType
data PrimitiveType
= NumericType NumericType
| Boolean
data NumericType
= IntegralType IntegralType
| FloatingPointType FloatingPointType
data IntegralType
= Byte
| Short
| Int
| Long
| Char
data FloatingPointType
= Float
| Double
data ReferenceType
= ClassOrInterfaceType ClassOrInterfaceType
| ArrayType ArrayType
data ClassOrInterfaceType = Name Name
data ClassType = ClassOrInterfaceType1 ClassOrInterfaceType
data InterfaceType = ClassOrInterfaceType2 ClassOrInterfaceType
data ArrayType
= PrimitiveType1 PrimitiveType
| ArrayType0 Name
| ArrayType1 ArrayType
data Block = BlockStatement_s [BlockStatement]
data BlockStatement
= LocalVariableDeclarationStatement LocalVariableDeclarationStatement
| Statement Statement
data LocalVariableDeclarationStatement = Semicolon LocalVariableDeclaration
data LocalVariableDeclaration = Comma Type [VariableDeclarator]
data Statement
= StatementWithoutTrailingSubstatement StatementWithoutTrailingSubstatement
| LabeledStatement LabeledStatement
| IfThenStatement IfThenStatement
| IfThenElseStatement IfThenElseStatement
| WhileStatement WhileStatement
| ForStatement ForStatement
| ClassDeclaration ClassDeclaration
data StatementNoShortIf
= StatementWithoutTrailingSubstatement1 StatementWithoutTrailingSubstatement
| LabeledStatementNoShortIf LabeledStatementNoShortIf
| IfThenElseStatementNoShortIf IfThenElseStatementNoShortIf
| WhileStatementNoShortIf WhileStatementNoShortIf
| ForStatementNoShortIf ForStatementNoShortIf
data StatementWithoutTrailingSubstatement
= Block Block
| EmptyStatement EmptyStatement
| ExpressionStatement ExpressionStatement
| SwitchStatement SwitchStatement
| DoStatement DoStatement
| BreakStatement BreakStatement
| ContinueStatement ContinueStatement
| ReturnStatement ReturnStatement
| SynchronizedStatement SynchronizedStatement
| ThrowStatement ThrowStatement
| TryStatement TryStatement
data EmptyStatement = Semicolon1
data LabeledStatement = Colon Identifier Statement
data LabeledStatementNoShortIf = Colon1 Identifier StatementNoShortIf
data ExpressionStatement = Semicolon2 StatementExpression
data StatementExpression
= MethodInvocation MethodInvocation
| ClassInstanceCreationExpression ClassInstanceCreationExpression
| Incr2 Expression
| Decr2 Expression
| Incr3 Expression
| Decr3 Expression
| Assignment Assignment
data IfThenStatement = If Expression Statement
data IfThenElseStatement = If_else Expression StatementNoShortIf Statement
data IfThenElseStatementNoShortIf = If_else1 Expression StatementNoShortIf StatementNoShortIf
data SwitchStatement = Switch Expression SwitchBlock
data SwitchBlock = SwitchBlockStatementGroup_s_SwitchLabel_s [SwitchBlockStatementGroup] [SwitchLabel]
data SwitchBlockStatementGroup = SwitchLabel_p_BlockStatement_p [SwitchLabel] [BlockStatement]
data SwitchLabel
= Case_colon Expression
| Default_colon
data WhileStatement = While Expression Statement
data WhileStatementNoShortIf = While1 Expression StatementNoShortIf
data DoStatement = Do_while_semicolon Statement Expression
data ForStatement = For_semicolon_semicolon (Maybe ForInit) (Maybe Expression) (Maybe ForUpdate) Statement
data ForStatementNoShortIf = For_semicolon_semicolon1 (Maybe ForInit) (Maybe Expression) (Maybe ForUpdate) StatementNoShortIf
data ForInit
= StatementExpressionListForInit StatementExpressionList
| LocalVariableDeclaration LocalVariableDeclaration
data ForUpdate = StatementExpressionList1 StatementExpressionList
data StatementExpressionList = StatementExpressionList [StatementExpression]
data BreakStatement = Break_semicolon (Maybe Identifier)
data ContinueStatement = Continue_semicolon (Maybe Identifier)
data ReturnStatement = Return_semicolon (Maybe Expression)
data ThrowStatement = Throw_semicolon Expression
data SynchronizedStatement = Synchronized Expression Block
data TryStatement
= Try Block [CatchClause]
| Try1 Block [CatchClause] Finally
data CatchClause = Catch FormalParameter Block
data Finally = Finally Block
data Name
= Identifier_p [Identifier]
| Class [Identifier]
data SimpleName = Identifier Identifier
data Modifier
= Public
| Protected
| Private
| Static
| Abstract
| Final
| Native
| Synchronized1
| Transient
| Volatile
data MethodDeclaration = MethodHeader_MethodBody MethodHeader MethodBody
data MethodHeader
= Modifier_s_Type_MethodDeclarator_Throws_opt [Modifier] Type MethodDeclarator (Maybe Throws)
| Void [Modifier] MethodDeclarator (Maybe Throws)
data MethodDeclarator
= Comma2 Identifier [FormalParameter]
| MethodDeclarator MethodDeclarator
data FormalParameter = Type_VariableDeclaratorId Type VariableDeclaratorId
data Throws = Throws_comma [ClassType]
data MethodBody
= Block1 Block
| Semicolon3
data IntegerLiteral
= DecimalIntegerLiteral DecimalIntegerLiteral
| HexIntegerLiteral HexIntegerLiteral
| OctalIntegerLiteral OctalIntegerLiteral
data Literal
= IntegerLiteral IntegerLiteral
| FloatingPointLiteral FloatingPointLiteral
| BooleanLiteral BooleanLiteral
| CharacterLiteral CharacterLiteral
| StringLiteral StringLiteral
| NullLiteral NullLiteral
data InterfaceDeclaration = Interface [Modifier] Identifier (Maybe ExtendsInterfaces) InterfaceBody
data ExtendsInterfaces = Extends_comma [InterfaceType]
data InterfaceBody = InterfaceMemberDeclaration_s [InterfaceMemberDeclaration]
data InterfaceMemberDeclaration
= ConstantDeclaration ConstantDeclaration
| AbstractMethodDeclaration AbstractMethodDeclaration
data ConstantDeclaration = FieldDeclaration FieldDeclaration
data AbstractMethodDeclaration = Semicolon4 MethodHeader
data FieldDeclaration = Comma_semicolon [Modifier] Type [VariableDeclarator]
data VariableDeclarator
= VariableDeclaratorId VariableDeclaratorId
| Equal VariableDeclaratorId VariableInitializer
data VariableDeclaratorId
= Identifier1 Identifier
| VariableDeclaratorId1 VariableDeclaratorId
data VariableInitializer
= Expression Expression
| ArrayInitializer ArrayInitializer
data ArrayInitializer = Comma_comma [VariableInitializer] (Maybe ())
data Primary
= PrimaryNoNewArray PrimaryNoNewArray
| ArrayCreationExpression ArrayCreationExpression
data PrimaryNoNewArray
= Literal Literal
| This0
| This1 Name
| Expression1 Expression
| ClassInstanceCreationExpression1 ClassInstanceCreationExpression
| FieldAccess FieldAccess
| MethodInvocation1 MethodInvocation
| ArrayAccess ArrayAccess
data ClassInstanceCreationExpression
= New_comma ClassType [Expression]
| New_comma1 ClassType [Expression] ClassBody
data ArrayCreationExpression
= New PrimitiveType [DimExpr] [Dim]
| New1 ClassOrInterfaceType [DimExpr] [Dim]
| New2 ClassOrInterfaceType [DimExprInitialized] ArrayInitializer
data DimExprInitialized = Expression_opt (Maybe Expression)
data DimExpr = Expression2 Expression
data Dim = Dim_dunno_a_0
data FieldAccess
= Name1 Name
| Primary_Identifier Primary Identifier
| Super Identifier
data MethodInvocation
= NameMethodInvocation Name [Expression]
| PrimaryMethodInvocation Primary Identifier [Expression]
| SuperMethodInvocation Identifier [Expression]
data ArrayAccess
= Name_Expression Name Expression
| PrimaryNoNewArray_Expression PrimaryNoNewArray Expression
data Expression
= Primary Primary
| Plus Expression
| Minus Expression
| Tilde Expression
| Not Expression
| PrimitiveType_Dim_s_Expression PrimitiveType [Dim] Expression
| Expression_Expression2 Expression Expression
| Name_Dim_p_Expression Name [Dim] Expression
| Expression_times_or_div_or_mod_Expression1 Expression TempHuub1 Expression
| Expression_plus_or_minus_Expression1 Expression TempHuub2 Expression
| Expression_shift_left_or_shift_right_or_Expression1 Expression TempHuub3 Expression
| Expression_lt_or_gt_or_le_or_ge_Expression1 Expression TempHuub4 Expression
| Instanceof Expression ReferenceType
| Expression_equal_or_not_equal_Expression1 Expression TempHuub5 Expression
| Address1 Expression Expression
| Expression_Expression3 Expression Expression
| Bar1 Expression Expression
| And1 Expression Expression
| Or1 Expression Expression
| Colon2 Expression Expression Expression
| StatementExpression StatementExpression
| Assignment1 Assignment
data TempHuub1
= Temphuub1_1
| Temphuub1_2
| Temphuub1_3
data TempHuub2
= Temphuub2_1
| Temphuub2_2
data TempHuub3
= Temphuub3_1
| Temphuub3_2
| Temphuub3_3
data TempHuub4
= Temphuub4_1
| Temphuub4_2
| Temphuub4_3
| Temphuub4_4
data TempHuub5
= Temphuub5_1
| Temphuub5_2
data Assignment = LeftHandSide_AssignmentOperator_Expression LeftHandSide AssignmentOperator Expression
data LeftHandSide
= Name2 Name
| FieldAccess1 FieldAccess
| ArrayAccess1 ArrayAccess
data AssignmentOperator
= Equal1
| AssignMul
| AssignDiv
| AssignMod
| AssignPlus
| AssignMin
| AssignSL
| AssignSR
| AssignmentOperator_dunno_b_0
| AssignAnd
| AssignExp
| AssignOr
data ConstructorDeclaration = Modifier_s_ConstructorDeclarator_Throws_opt_ConstructorBody [Modifier] ConstructorDeclarator (Maybe Throws) ConstructorBody
data ConstructorDeclarator = Comma5 SimpleName [FormalParameter]
data ConstructorBody = ExplicitConstructorInvocation_opt_BlockStatement_s (Maybe ExplicitConstructorInvocation) [BlockStatement]
data ExplicitConstructorInvocation
= This_comma_semicolon [Expression]
| Super_comma_semicolon [Expression]
data ClassDeclaration = Class1 [Modifier] Identifier (Maybe Super) (Maybe Interfaces) ClassBody
data Super = Extends ClassType
data Interfaces = Implements_comma [InterfaceType]
data ClassBody = ClassBodyDeclaration_s [ClassBodyDeclaration]
data ClassBodyDeclaration
= ClassMemberDeclaration ClassMemberDeclaration
| StaticInitializer StaticInitializer
| ConstructorDeclaration ConstructorDeclaration
| EmptyClassBodyDeclaration
| ClassDeclaration1 ClassDeclaration
| ClassDeclaration2 InterfaceDeclaration
data ClassMemberDeclaration
= FieldDeclaration1 FieldDeclaration
| MethodDeclaration MethodDeclaration
data StaticInitializer = Static1 Block
data File = File_with_header FileHeader CompilationUnit
data CompilationUnit = CU (Maybe PackageDeclaration) [ImportDeclaration] [TypeDeclaration]
data PackageDeclaration = Package_semicolon Name
data ImportDeclaration
= SingleTypeImportDeclaration SingleTypeImportDeclaration
| TypeImportOnDemandDeclaration TypeImportOnDemandDeclaration
data SingleTypeImportDeclaration = Import_semicolon Name
data TypeImportOnDemandDeclaration = Import_times_semicolon Name
data TypeDeclaration
= ClassTypeDeclaration ClassDeclaration
| InterfaceDeclaration InterfaceDeclaration
| Semicolon5
data CompilationUnits = CompilationUnits [CompilationUnit]
type UnicodeEscape = String
type DecimalIntegerLiteral = String
type HexIntegerLiteral = String
type OctalIntegerLiteral = String
type FloatingPointLiteral = String
type BooleanLiteral = String
type NullLiteral = String
type SingleCharacter = String
type CharacterLiteral = String
type EscapeSequence = String
type StringCharacter = String
type Identifier = String
type StringLiteral = String
type Comment = String
type CommentChar = String
type Asterisk = String
type FileHeader = String
Produced by Haddock version 0.6