tools/JavaParserII.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Tue, 29 Jan 2013 15:15:51 +0000
branchdevelopment
changeset 2006 c0598cab5f15
parent 1944 25a444558ba2
child 2069 75d40b7b986f
permissions -rw-r--r--
Commit fix: fixed content of Smalltalk extensions containers. Somehow, bare Java class were written to extension containers for Java classes.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
     1
"{ Package: 'stx:libjava/tools' }"
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
     2
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
     3
JavaParserI subclass:#JavaParserII
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
     4
	instanceVariableNames:'compilationUnit annotations packageDeclaration importDeclaration
1879
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
     5
		typeDeclaration qualifiedName qualifiedNameForImport annotation
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
     6
		classOrInterfaceDeclaration classDeclaration interfaceDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
     7
		normalClassDeclaration enumDeclaration classModifiers
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
     8
		typeParameters type typeList classBody jsuper interfaces
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
     9
		typeParameter typeBound enumBody enumConstants
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    10
		enumBodyDeclarations enumConstant arguments classBodyDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    11
		normalInterfaceDeclaration annotationTypeDeclaration
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
    12
		interfaceModifiers interfaceBody interfaceBodyDeclaration
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    13
		fieldDeclaration methodDeclaration methodModifiers
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    14
		formalParameters throws qualifiedNameList
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    15
		explicitConstructorInvocation blockStatement fieldModifiers
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    16
		variableDeclarators variableDeclarator variableInitializer
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    17
		interfaceFieldDeclaration interfaceMethodDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    18
		classOrInterfaceType primitiveType typeArguments typeArgument
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    19
		formalParameterDecls ellipsisParameterDecl normalParameterDecl
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    20
		variableModifiers nonWildcardTypeArguments primary
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    21
		elementValuePairs elementValue elementValuePair
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    22
		conditionalExpression elementValueArrayInitializer
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    23
		annotationTypeBody annotationTypeElementDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    24
		annotationMethodDeclaration localVariableDeclarationStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    25
		statement localVariableDeclaration expression parExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    26
		ifStatement assertStatement basicForStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    27
		enhancedForStatement forInit expressionList forStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    28
		whileStatement catches catchClause formalParameter doStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    29
		tryStatement switchBlockStatementGroup switchLabel
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    30
		switchStatement synchronizedStatement returnStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    31
		throwStatement breakStatement continueStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    32
		expressionStatement labeledStatement emptyStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    33
		assignmentOperator conditionalOrExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    34
		conditionalAndExpression inclusiveOrExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    35
		exclusiveOrExpression andExpression equalityExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    36
		instanceofExpression relationalExpression shiftExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    37
		relationalOperator additiveExpression shiftOperator
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    38
		multiplicativeExpression unaryExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    39
		unaryExpressionNotPlusMinus castExpression selector innerCreator
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    40
		superSuffix identifierSuffix creator classCreatorRest
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    41
		arrayCreator createdName arrayInitializer constructorDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    42
		constructorModifiers methodNotConstructorDeclaration wildcard
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    43
		emptySquaredParenthesis methodModifierNotAnnotation
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    44
		classModifierNotAnnotation'
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    45
	classVariableNames:''
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    46
	poolDictionaries:''
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    47
	category:'Languages-Java-Parser'
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    48
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    49
1879
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    50
!JavaParserII class methodsFor:'documentation'!
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    51
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    52
documentation
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    53
"
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    54
    PetitParser based parser for Java. Contains all grammar rules but no action.
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    55
    Usefull only for inheriting and extending.
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    56
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    57
    [author:]
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    58
        Jan Vrany <jan.vrany@fit.cvut.cz>
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    59
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    60
    [instance variables:]
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    61
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    62
    [class variables:]
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    63
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    64
    [see also:]
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    65
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    66
"
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
    67
! !
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    68
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    69
!JavaParserII methodsFor:'accessing'!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    70
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    71
start
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    72
        "Default start production."
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    73
1412
93b28a7963b0 Fixes and improvements in parser
vranyj1
parents: 1403
diff changeset
    74
        ^ compilationUnit end
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    75
1412
93b28a7963b0 Fixes and improvements in parser
vranyj1
parents: 1403
diff changeset
    76
    "Modified: / 10-03-2012 / 12:03:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    77
! !
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    78
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    79
!JavaParserII methodsFor:'as yet unclassified'!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    80
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    81
explicitConstructorInvocation
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    82
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    83
	^ (
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    84
		(	nonWildcardTypeArguments optional,
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
    85
			((self  thisKW) / (self  superKW)))
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    86
		
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    87
		/	(primary ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    88
			(self tokenFor: '.') ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    89
			nonWildcardTypeArguments optional,
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
    90
			(self  superKW))) ,
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    91
		
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    92
		arguments , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    93
		(self tokenFor: ';')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    94
! !
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    95
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    96
!JavaParserII methodsFor:'grammar'!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    97
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    98
arguments 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
    99
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   100
	^(self tokenFor: '('),
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   101
		expressionList optional,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   102
	(self tokenFor: ')')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   103
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   104
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   105
arrayCreator
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   106
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   107
	^ 	(	(self  newKW) , createdName ,
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   108
			emptySquaredParenthesis plus,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   109
			arrayInitializer)
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   110
			
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   111
		/(	(self  newKW), createdName ,
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   112
			((self tokenFor: '['), expression , (self tokenFor: ']')) plus,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   113
			emptySquaredParenthesis star)
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   114
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   115
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   116
arrayInitializer 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   117
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   118
	^ (self tokenFor: '{'),
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   119
		(variableInitializer , ((self tokenFor: ','), variableInitializer ) star) optional,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   120
		(self tokenFor: ',') optional,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   121
	   (self tokenFor: '}')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   122
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   123
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   124
block 
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   125
    "Do not parse block's content for now"
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   126
    ^super block
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   127
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   128
    "Following is somewhat broken"    
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   129
"/    ^ 
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   130
"/        (self tokenFor: '{') ,
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   131
"/        blockStatement star,
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   132
"/        (self tokenFor: '}')
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   133
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   134
    "Modified: / 11-03-2012 / 13:21:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   135
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   136
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   137
classCreatorRest 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   138
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   139
	^	arguments , classBody optional
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   140
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   141
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   142
compilationUnit 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   143
1422
1a51f93d412e Fixes, parses java/lang and java/awt
vranyj1
parents: 1421
diff changeset
   144
        ^ 
1a51f93d412e Fixes, parses java/lang and java/awt
vranyj1
parents: 1421
diff changeset
   145
        (annotations optional, packageDeclaration) optional , 
1a51f93d412e Fixes, parses java/lang and java/awt
vranyj1
parents: 1421
diff changeset
   146
        importDeclaration star , 
1a51f93d412e Fixes, parses java/lang and java/awt
vranyj1
parents: 1421
diff changeset
   147
        typeDeclaration star ,
1944
25a444558ba2 Java parser classes cleanup.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1884
diff changeset
   148
        (self tokenParserFor:#EOF) end
1420
574d4bda2162 Fixes - all test pass
vranyj1
parents: 1419
diff changeset
   149
1422
1a51f93d412e Fixes, parses java/lang and java/awt
vranyj1
parents: 1421
diff changeset
   150
    "Modified (format): / 16-03-2012 / 10:32:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   151
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   152
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   153
createdName 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   154
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   155
	^ classOrInterfaceType 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   156
	/	primitiveType 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   157
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   158
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   159
creator
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   160
		
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   161
	^	(	(self  newKW), nonWildcardTypeArguments optional , classOrInterfaceType , classCreatorRest)
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   162
		/	arrayCreator
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   163
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   164
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   165
elementValue 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   166
1417
f4c3f5b90dd8 Fixes in parser
vranyj1
parents: 1415
diff changeset
   167
        ^(conditionalExpression
f4c3f5b90dd8 Fixes in parser
vranyj1
parents: 1415
diff changeset
   168
        / annotation 
1419
ec8c810acddb Parser is now based on JavaScanner
vranyj1
parents: 1417
diff changeset
   169
        / elementValueArrayInitializer)
1417
f4c3f5b90dd8 Fixes in parser
vranyj1
parents: 1415
diff changeset
   170
1419
ec8c810acddb Parser is now based on JavaScanner
vranyj1
parents: 1417
diff changeset
   171
    "Modified: / 15-03-2012 / 09:01:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   172
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   173
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   174
elementValueArrayInitializer
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   175
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   176
	^ (self tokenFor: '{') ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   177
		(elementValue , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   178
			((self tokenFor: ',') , elementValue ) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   179
		) optional ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   180
		((self tokenFor: ',') optional ),
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   181
	  (self tokenFor: '}')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   182
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   183
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   184
elementValuePair 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   185
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   186
	^ identifier , (self tokenFor: '=') , elementValue 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   187
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   188
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   189
elementValuePairs 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   190
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   191
	^ elementValuePair , ((self tokenFor: ',') , elementValuePair ) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   192
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   193
1879
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   194
importDeclaration
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   195
    "
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   196
^       ((self  importKW) , (self  staticKW) optional , identifier),
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   197
(       (       (self tokenFor: '.') , (self tokenFor: '*'))
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   198
        /(      ((self tokenFor: '.') , identifier) plus , ((self tokenFor: '.') , (self tokenFor: '*')) optional)
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   199
),
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   200
(self tokenFor: ';')"
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   201
    
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   202
    ^ ((self importKW) , (self staticKW) optional , qualifiedNameForImport 
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   203
        , (self tokenFor:';')).
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   204
1879
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   205
    "Modified (comment): / 15-12-2012 / 17:36:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   206
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   207
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   208
innerCreator 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   209
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   210
	^	(self tokenFor: '.'), (self  newKW),
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   211
		nonWildcardTypeArguments optional,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   212
		identifier ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   213
		typeArguments optional,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   214
		classCreatorRest 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   215
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   216
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   217
interfaces
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   218
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   219
	^ (self  implementsKW) , typeList
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   220
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   221
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   222
jsuper
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   223
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   224
	^ (self  extendsKW) , type
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   225
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   226
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   227
nonWildcardTypeArguments 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   228
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   229
	^(self tokenFor: '<'),
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   230
		typeList ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   231
	(self tokenFor: '>')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   232
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   233
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   234
packageDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   235
1419
ec8c810acddb Parser is now based on JavaScanner
vranyj1
parents: 1417
diff changeset
   236
        ^ (self  packageKW) , qualifiedName , (self tokenFor:';')
1412
93b28a7963b0 Fixes and improvements in parser
vranyj1
parents: 1403
diff changeset
   237
1419
ec8c810acddb Parser is now based on JavaScanner
vranyj1
parents: 1417
diff changeset
   238
    "Modified: / 15-03-2012 / 09:02:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   239
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   240
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   241
primary 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   242
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   243
	^		parExpression 
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   244
		/(	(self  thisKW),
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   245
			((self tokenFor: '.'), identifier ) star,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   246
			identifierSuffix optional)
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   247
		/(	identifier,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   248
			((self tokenFor: '.'), identifier ) star,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   249
			 identifierSuffix optional)
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   250
		/(	(self  superKW), superSuffix )
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   251
		/	literal
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   252
		/	creator
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   253
		/(	primitiveType,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   254
			emptySquaredParenthesis star,
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   255
			(self tokenFor: '.'), (self  classKW))
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   256
		/(	(self  voidKW), (self tokenFor: '.'), (self  classKW))
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   257
			
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   258
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   259
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   260
qualifiedName 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   261
1881
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   262
        ^ identifier , ((self tokenFor: '.'), identifier ) star 
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   263
            ==> [:nodes|
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   264
                String streamContents:[:s|
1884
b5f94052b1c7 Bugfix in syntax highlighter (caused by JavaParserII refactoring)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1881
diff changeset
   265
                    s nextPutAll: nodes first value.
1881
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   266
                    nodes second do:[:each|
1884
b5f94052b1c7 Bugfix in syntax highlighter (caused by JavaParserII refactoring)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1881
diff changeset
   267
                        s nextPut:$.; nextPutAll:each second value
1881
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   268
                    ]
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   269
                ]
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   270
            ]
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   271
1884
b5f94052b1c7 Bugfix in syntax highlighter (caused by JavaParserII refactoring)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1881
diff changeset
   272
    "Modified: / 16-12-2012 / 10:29:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   273
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   274
1879
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   275
qualifiedNameForImport 
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   276
1881
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   277
    ^(qualifiedName , ( (self tokenFor: '.') , (self tokenFor: '*') ) optional)
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   278
        ==> [:nodes|
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   279
            nodes second notNil ifTrue:[
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   280
                nodes first , '.*'
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   281
            ] ifFalse:[
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   282
                nodes first
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   283
            ]
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   284
        ]
1879
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   285
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   286
    "Created: / 15-12-2012 / 17:32:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1881
80d037e8a596 JavaParser refactoring - qualifiedName & qualifiedNameForImport.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1879
diff changeset
   287
    "Modified: / 15-12-2012 / 22:40:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1879
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   288
!
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
   289
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   290
typeBound 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   291
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   292
	^ type , ((self tokenFor: '&') , type) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   293
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   294
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   295
typeDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   296
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   297
	^ (self tokenFor: ';') / classOrInterfaceDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   298
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   299
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   300
typeList 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   301
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   302
	^ type , ((self tokenFor: ','), type) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   303
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   304
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   305
typeParameter 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   306
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   307
	^ identifier , ((self  extendsKW) , typeBound) optional
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   308
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   309
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   310
typeParameters 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   311
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   312
	^ (self tokenFor: '<') , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   313
			typeParameter , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   314
			((self tokenFor: ',') , typeParameter) star , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   315
		(self tokenFor: '>')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   316
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   317
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   318
variableInitializer 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   319
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   320
	^	arrayInitializer 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   321
	/	expression	
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   322
! !
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   323
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   324
!JavaParserII methodsFor:'grammar-annotations'!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   325
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   326
annotation 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   327
1417
f4c3f5b90dd8 Fixes in parser
vranyj1
parents: 1415
diff changeset
   328
        ^(self tokenFor: '@') , qualifiedName ,
f4c3f5b90dd8 Fixes in parser
vranyj1
parents: 1415
diff changeset
   329
        ((self tokenFor: '(') , 
f4c3f5b90dd8 Fixes in parser
vranyj1
parents: 1415
diff changeset
   330
                (elementValuePairs / elementValue) optional , 
f4c3f5b90dd8 Fixes in parser
vranyj1
parents: 1415
diff changeset
   331
                (self tokenFor: ')') ) optional
f4c3f5b90dd8 Fixes in parser
vranyj1
parents: 1415
diff changeset
   332
f4c3f5b90dd8 Fixes in parser
vranyj1
parents: 1415
diff changeset
   333
    "Modified: / 12-03-2012 / 18:24:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   334
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   335
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   336
annotationMethodDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   337
        "/self flag: 'check whether method modifiers are the right modifiers to use'.
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   338
        
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   339
        ^ methodModifiers ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   340
        type ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   341
        identifier ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   342
        (self tokenFor: '('), (self tokenFor: ')'),
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   343
        ((self  defaultKW), elementValue ) optional ,
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   344
        (self tokenFor: ';')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   345
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   346
    "Modified: / 23-08-2011 / 00:24:48 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   347
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   348
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   349
annotationTypeBody
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   350
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   351
	^ (self tokenFor: '{') ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   352
	(annotationTypeElementDeclaration star),
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   353
	(self tokenFor: '}')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   354
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   355
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   356
annotationTypeDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   357
1426
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   358
        ^ interfaceModifiers , (self tokenFor: '@'),
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   359
        (self  interfaceKW) ,
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   360
        self typeNameIdentifier ,
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   361
        annotationTypeBody
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   362
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   363
    "Created: / 17-03-2012 / 19:42:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   364
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   365
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   366
annotationTypeElementDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   367
	
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   368
	^ annotationMethodDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   369
	/ interfaceFieldDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   370
	/ normalClassDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   371
	/ enumDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   372
	/ annotationTypeDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   373
	/ (self tokenFor: ';')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   374
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   375
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   376
annotations 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   377
	
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   378
	^ annotation plus
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   379
! !
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   380
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   381
!JavaParserII methodsFor:'grammar-classes'!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   382
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   383
classBody 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   384
1419
ec8c810acddb Parser is now based on JavaScanner
vranyj1
parents: 1417
diff changeset
   385
    ^ (self tokenFor:'{') , classBodyDeclaration star , (self tokenFor:'}').
1412
93b28a7963b0 Fixes and improvements in parser
vranyj1
parents: 1403
diff changeset
   386
1419
ec8c810acddb Parser is now based on JavaScanner
vranyj1
parents: 1417
diff changeset
   387
    "Modified (format): / 15-03-2012 / 09:01:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   388
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   389
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   390
classBodyDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   391
1412
93b28a7963b0 Fixes and improvements in parser
vranyj1
parents: 1403
diff changeset
   392
        ^ 
93b28a7963b0 Fixes and improvements in parser
vranyj1
parents: 1403
diff changeset
   393
        (self tokenFor: ';')
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   394
        / ((self  staticKW) optional , block)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   395
        / fieldDeclaration
1412
93b28a7963b0 Fixes and improvements in parser
vranyj1
parents: 1403
diff changeset
   396
        / methodDeclaration
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   397
        / classDeclaration 
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   398
        / interfaceDeclaration
1412
93b28a7963b0 Fixes and improvements in parser
vranyj1
parents: 1403
diff changeset
   399
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   400
    "Modified: / 11-03-2012 / 13:15:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   401
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   402
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   403
classDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   404
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   405
	^ normalClassDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   406
	/ enumDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   407
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   408
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   409
classOrInterfaceDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   410
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   411
	^ classDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   412
	/ interfaceDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   413
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   414
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   415
classOrInterfaceType 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   416
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   417
	^ identifier ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   418
	typeArguments optional,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   419
	((self tokenFor: '.'), identifier , typeArguments optional ) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   420
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   421
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   422
ellipsisParameterDecl
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   423
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   424
        ^ variableModifiers ,
1419
ec8c810acddb Parser is now based on JavaScanner
vranyj1
parents: 1417
diff changeset
   425
        type,
1944
25a444558ba2 Java parser classes cleanup.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1884
diff changeset
   426
        (self tokenParserFor:#Ellipsis) ,
1419
ec8c810acddb Parser is now based on JavaScanner
vranyj1
parents: 1417
diff changeset
   427
        identifier
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   428
1420
574d4bda2162 Fixes - all test pass
vranyj1
parents: 1419
diff changeset
   429
    "Modified: / 15-03-2012 / 10:10:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   430
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   431
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   432
fieldDeclaration
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   433
                
1419
ec8c810acddb Parser is now based on JavaScanner
vranyj1
parents: 1417
diff changeset
   434
    ^ fieldModifiers , type , variableDeclarators, (self tokenFor: ';')
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   435
1419
ec8c810acddb Parser is now based on JavaScanner
vranyj1
parents: 1417
diff changeset
   436
    "Modified: / 15-03-2012 / 09:01:30 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   437
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   438
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   439
fieldModifiers
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   440
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   441
	^ ((self  volatileKW) /
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   442
		(self  finalKW) /
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   443
		(self  protectedKW) /
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   444
		(self  privateKW) /
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   445
		(self  publicKW) /
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   446
		(self  staticKW) /
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   447
		(self  transientKW) /
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   448
		annotation) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   449
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   450
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   451
formalParameter 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   452
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   453
	^ variableModifiers ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   454
	type ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   455
	identifier ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   456
	emptySquaredParenthesis star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   457
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   458
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   459
formalParameterDecls
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   460
	
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   461
	^ ellipsisParameterDecl
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   462
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   463
    /   ((normalParameterDecl , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   464
		(self tokenFor: ',')) plus , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   465
		ellipsisParameterDecl)
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   466
		
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   467
    /   (normalParameterDecl , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   468
		((self tokenFor: ',') , normalParameterDecl) star)
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   469
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   470
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   471
formalParameters 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   472
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   473
	^ (self tokenFor: '(') ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   474
	formalParameterDecls optional ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   475
	(self tokenFor: ')')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   476
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   477
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   478
normalClassDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   479
1426
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   480
        ^ classModifiers , (self  classKW) , self typeNameIdentifier ,
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   481
                typeParameters optional,
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   482
                jsuper optional,
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   483
                interfaces optional ,
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   484
                classBody
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   485
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   486
    "Created: / 17-03-2012 / 19:41:54 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   487
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   488
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   489
normalParameterDecl
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   490
1419
ec8c810acddb Parser is now based on JavaScanner
vranyj1
parents: 1417
diff changeset
   491
        ^ variableModifiers ,
ec8c810acddb Parser is now based on JavaScanner
vranyj1
parents: 1417
diff changeset
   492
        type,
ec8c810acddb Parser is now based on JavaScanner
vranyj1
parents: 1417
diff changeset
   493
        identifier,
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   494
        emptySquaredParenthesis star
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   495
1419
ec8c810acddb Parser is now based on JavaScanner
vranyj1
parents: 1417
diff changeset
   496
    "Modified: / 15-03-2012 / 09:01:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   497
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   498
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   499
primitiveType 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   500
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   501
	^ (self  booleanKW)  
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   502
		"numeric types"
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   503
		/ (self  byteKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   504
		/ (self  shortKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   505
		/ (self  intKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   506
		/ (self  longKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   507
		/ (self  charKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   508
		/ (self  floatKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   509
		/ (self  doubleKW)
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   510
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   511
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   512
type 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   513
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   514
	^ (	classOrInterfaceType 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   515
		/ primitiveType
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   516
	), 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   517
	emptySquaredParenthesis star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   518
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   519
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   520
typeArgument 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   521
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   522
	^ type
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   523
	/ wildcard
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   524
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   525
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   526
typeArguments 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   527
1421
d68e361680e9 Parser improved, now it parser whole java.lang (code block skipped for now)
vranyj1
parents: 1420
diff changeset
   528
    ^ 
d68e361680e9 Parser improved, now it parser whole java.lang (code block skipped for now)
vranyj1
parents: 1420
diff changeset
   529
"/        (self tokenFor: '<') , 
d68e361680e9 Parser improved, now it parser whole java.lang (code block skipped for now)
vranyj1
parents: 1420
diff changeset
   530
        '<' asParser trim ,
d68e361680e9 Parser improved, now it parser whole java.lang (code block skipped for now)
vranyj1
parents: 1420
diff changeset
   531
        (typeArgument , ((self tokenFor: ','), typeArgument) star ) , 
d68e361680e9 Parser improved, now it parser whole java.lang (code block skipped for now)
vranyj1
parents: 1420
diff changeset
   532
"/        (self tokenFor: '>')
d68e361680e9 Parser improved, now it parser whole java.lang (code block skipped for now)
vranyj1
parents: 1420
diff changeset
   533
        '>' asParser trim
d68e361680e9 Parser improved, now it parser whole java.lang (code block skipped for now)
vranyj1
parents: 1420
diff changeset
   534
d68e361680e9 Parser improved, now it parser whole java.lang (code block skipped for now)
vranyj1
parents: 1420
diff changeset
   535
    "Modified: / 15-03-2012 / 23:18:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   536
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   537
1426
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   538
typeNameIdentifier
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   539
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   540
    ^identifier
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   541
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   542
    "Created: / 17-03-2012 / 19:41:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   543
!
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   544
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   545
variableDeclarator 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   546
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   547
	^ identifier ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   548
	((self tokenFor: '[') , (self tokenFor: ']')) star ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   549
	((self tokenFor: '=') , variableInitializer) optional
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   550
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   551
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   552
variableDeclarators
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   553
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   554
	^ variableDeclarator , ((self tokenFor: ','), variableDeclarator) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   555
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   556
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   557
wildcard 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   558
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   559
	^ (self tokenFor: '?') ,
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   560
		(	((self  extendsKW)/(self  superKW)), 
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   561
			type 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   562
		) optional
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   563
! !
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   564
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   565
!JavaParserII methodsFor:'grammar-classes-enum'!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   566
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   567
enumBody 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   568
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   569
	^ (self tokenFor: '{') ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   570
		enumConstants optional ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   571
		(self tokenFor: ',') optional ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   572
		enumBodyDeclarations optional ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   573
		(self tokenFor: '}')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   574
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   575
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   576
enumBodyDeclarations 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   577
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   578
	^ (self tokenFor: ';') , classBodyDeclaration star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   579
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   580
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   581
enumConstant
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   582
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   583
	^ annotations optional , identifier , arguments optional , classBody optional 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   584
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   585
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   586
enumConstants 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   587
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   588
	^ enumConstant , ((self tokenFor: ',') , enumConstant) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   589
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   590
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   591
enumDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   592
1426
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   593
        ^ classModifiers ,
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   594
           (self  enumKW),
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   595
           self typeNameIdentifier ,
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   596
           interfaces optional,
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   597
           enumBody
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   598
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   599
    "Created: / 17-03-2012 / 19:42:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   600
! !
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   601
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   602
!JavaParserII methodsFor:'grammar-classes-interface'!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   603
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   604
interfaceBody
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   605
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   606
	^ (self tokenFor: '{') , interfaceBodyDeclaration star , (self tokenFor: '}')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   607
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   608
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   609
interfaceBodyDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   610
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   611
	^ interfaceFieldDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   612
	/ interfaceMethodDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   613
	/ interfaceDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   614
	/ classDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   615
	/ (self tokenFor: ';')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   616
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   617
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   618
interfaceDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   619
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   620
	^normalInterfaceDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   621
	/ annotationTypeDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   622
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   623
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   624
interfaceFieldDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   625
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   626
	^ fieldModifiers , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   627
	type ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   628
	variableDeclarators ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   629
	(self tokenFor: ';')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   630
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   631
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   632
interfaceMethodDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   633
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   634
	^ methodModifiers ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   635
	typeParameters optional,
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   636
	((self  voidKW) / type) ,
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   637
	identifier ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   638
	formalParameters ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   639
	emptySquaredParenthesis star ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   640
	throws optional ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   641
	(self tokenFor: ';')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   642
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   643
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   644
interfaceModifiers
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   645
1417
f4c3f5b90dd8 Fixes in parser
vranyj1
parents: 1415
diff changeset
   646
        ^ ((self abstractKW)
f4c3f5b90dd8 Fixes in parser
vranyj1
parents: 1415
diff changeset
   647
                /(self  protectedKW) 
f4c3f5b90dd8 Fixes in parser
vranyj1
parents: 1415
diff changeset
   648
                /(self  privateKW) 
f4c3f5b90dd8 Fixes in parser
vranyj1
parents: 1415
diff changeset
   649
                /(self  publicKW) 
f4c3f5b90dd8 Fixes in parser
vranyj1
parents: 1415
diff changeset
   650
                /(self  staticKW)
f4c3f5b90dd8 Fixes in parser
vranyj1
parents: 1415
diff changeset
   651
                /(self  strictfpKW) 
1419
ec8c810acddb Parser is now based on JavaScanner
vranyj1
parents: 1417
diff changeset
   652
                /annotation) star
1417
f4c3f5b90dd8 Fixes in parser
vranyj1
parents: 1415
diff changeset
   653
1419
ec8c810acddb Parser is now based on JavaScanner
vranyj1
parents: 1417
diff changeset
   654
    "Modified: / 15-03-2012 / 09:01:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   655
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   656
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   657
normalInterfaceDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   658
1426
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   659
        ^ interfaceModifiers , 
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   660
        (self  interfaceKW) , 
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   661
        self typeNameIdentifier , 
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   662
        typeParameters optional , 
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   663
        ((self  extendsKW) , typeList ) optional ,
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   664
        interfaceBody
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   665
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   666
    "Created: / 17-03-2012 / 19:42:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   667
! !
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   668
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   669
!JavaParserII methodsFor:'grammar-classes-method'!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   670
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   671
constructorDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   672
1423
39506d057e4b Fixes for constructors
vranyj1
parents: 1422
diff changeset
   673
        ^ constructorModifiers optional , 
39506d057e4b Fixes for constructors
vranyj1
parents: 1422
diff changeset
   674
           typeParameters optional , 
1426
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   675
           self constructorNameIdentifier,
1423
39506d057e4b Fixes for constructors
vranyj1
parents: 1422
diff changeset
   676
           formalParameters ,
39506d057e4b Fixes for constructors
vranyj1
parents: 1422
diff changeset
   677
           throws optional , 
39506d057e4b Fixes for constructors
vranyj1
parents: 1422
diff changeset
   678
           block
39506d057e4b Fixes for constructors
vranyj1
parents: 1422
diff changeset
   679
"/           (self tokenFor: '{' ) , 
39506d057e4b Fixes for constructors
vranyj1
parents: 1422
diff changeset
   680
"/                        explicitConstructorInvocation optional ,
39506d057e4b Fixes for constructors
vranyj1
parents: 1422
diff changeset
   681
"/                        blockStatement star ,
39506d057e4b Fixes for constructors
vranyj1
parents: 1422
diff changeset
   682
"/           (self tokenFor: '}')
39506d057e4b Fixes for constructors
vranyj1
parents: 1422
diff changeset
   683
1426
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   684
    "Modified: / 17-03-2012 / 19:08:45 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   685
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   686
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   687
constructorModifiers 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   688
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   689
	^ ((self  protectedKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   690
		/ (self  privateKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   691
		/ (self  publicKW)
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   692
		/ annotation) plus
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   693
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   694
1426
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   695
constructorNameIdentifier
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   696
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   697
    ^identifier
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   698
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   699
    "Created: / 17-03-2012 / 19:08:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   700
!
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   701
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   702
methodDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   703
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   704
	^ constructorDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   705
	/ methodNotConstructorDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   706
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   707
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   708
methodModifierNotAnnotation
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   709
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   710
	^ (self abstractKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   711
		/ (self  finalKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   712
		/ (self  nativeKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   713
		/ (self  protectedKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   714
		/ (self  privateKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   715
		/ (self  publicKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   716
		/ (self  staticKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   717
		/ (self  strictfpKW) 
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   718
		/ (self  synchronizedKW) 
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   719
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   720
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   721
methodModifiers 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   722
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   723
	^ (	methodModifierNotAnnotation
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   724
		/ annotation) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   725
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   726
1426
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   727
methodNameIdentifier
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   728
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   729
    ^identifier
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   730
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   731
    "Created: / 17-03-2012 / 19:08:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   732
!
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   733
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   734
methodNotConstructorDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   735
1426
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   736
        ^ methodModifiers,
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   737
           typeParameters optional,
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   738
           ((self  voidKW) / type),
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   739
           self methodNameIdentifier,
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   740
           formalParameters ,
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   741
           emptySquaredParenthesis star ,
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   742
           throws optional,
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   743
           (block / (self tokenFor: ';'))
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   744
69e535962d10 Improvements in syntax highlighting
vranyj1
parents: 1423
diff changeset
   745
    "Modified: / 17-03-2012 / 19:09:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   746
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   747
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   748
qualifiedNameList 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   749
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   750
	^ qualifiedName , ((self tokenFor: ',') , qualifiedName ) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   751
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   752
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   753
throws 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   754
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   755
	^ (self  throwsKW) , qualifiedNameList
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   756
! !
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   757
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   758
!JavaParserII methodsFor:'grammar-expressions'!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   759
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   760
additiveExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   761
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   762
	^ multiplicativeExpression , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   763
	(( (self tokenFor: '+') / (self tokenFor: '-') ) , multiplicativeExpression ) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   764
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   765
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   766
andExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   767
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   768
	^ equalityExpression , ((self tokenFor: '&') , equalityExpression) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   769
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   770
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   771
assignmentOperator 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   772
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   773
	^ (self tokenFor: '=')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   774
	/ (self tokenFor: '>>>=')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   775
	/	(self tokenFor: '>>=')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   776
	/	(self tokenFor: '<<=')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   777
	/	(self tokenFor: '&=')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   778
	/	(self tokenFor: '^=')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   779
	/	(self tokenFor: '|=')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   780
	/	(self tokenFor: '-=')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   781
	/	(self tokenFor: '+=')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   782
	/	(self tokenFor: '%=')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   783
	/	(self tokenFor: '/=')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   784
	/	(self tokenFor: '*=')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   785
		
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   786
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   787
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   788
castExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   789
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   790
	^ ((self tokenFor: '('), 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   791
			primitiveType ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   792
		(self tokenFor: ')'), unaryExpression )
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   793
		
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   794
	/ ((self tokenFor: '('),
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   795
			type,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   796
		(self tokenFor: ')'), unaryExpressionNotPlusMinus )
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   797
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   798
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   799
conditionalAndExpression 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   800
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   801
	^inclusiveOrExpression ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   802
	((self tokenFor: '&&'), inclusiveOrExpression ) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   803
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   804
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   805
conditionalExpression 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   806
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   807
	^conditionalOrExpression ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   808
	((self tokenFor: '?'), expression , (self tokenFor: ':'), conditionalExpression ) optional
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   809
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   810
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   811
conditionalOrExpression 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   812
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   813
	^conditionalAndExpression ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   814
	((self tokenFor: '||'), conditionalAndExpression ) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   815
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   816
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   817
equalityExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   818
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   819
	^ instanceofExpression , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   820
	(((self tokenFor: '!!=') / (self tokenFor: '==')) , instanceofExpression) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   821
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   822
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   823
exclusiveOrExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   824
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   825
	^ andExpression , ((self tokenFor: '^') , andExpression) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   826
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   827
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   828
expression 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   829
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   830
	^ conditionalExpression , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   831
	(assignmentOperator , expression) optional
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   832
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   833
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   834
identifierSuffix 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   835
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   836
	^ (		emptySquaredParenthesis plus , (self tokenFor: '.'), (self  classKW))
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   837
		/	(((self tokenFor: '[') , expression , (self tokenFor: ']')) plus)
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   838
		/	arguments 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   839
		/	((self tokenFor: '.'),
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   840
			(	(self  classKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   841
			/	(self  thisKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   842
			/	((self  superKW), arguments)
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   843
			/	(nonWildcardTypeArguments , identifier , arguments)))
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   844
		/	innerCreator
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   845
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   846
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   847
inclusiveOrExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   848
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   849
	^ exclusiveOrExpression , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   850
	((self tokenFor: '|') , exclusiveOrExpression) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   851
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   852
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   853
instanceofExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   854
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   855
	^  relationalExpression , 
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   856
	((self  instanceofKW) , type) optional
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   857
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   858
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   859
multiplicativeExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   860
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   861
	^ unaryExpression , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   862
	(( (self tokenFor: '*') 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   863
	   / (self tokenFor: '/') 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   864
	   / (self tokenFor: '%') ) , unaryExpression ) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   865
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   866
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   867
parExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   868
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   869
	^ (self tokenFor: '(') , expression , (self tokenFor: ')')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   870
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   871
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   872
relationalExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   873
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   874
	^  shiftExpression , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   875
	(relationalOperator , shiftExpression) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   876
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   877
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   878
relationalOperator
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   879
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   880
	^ (self tokenFor: '<=')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   881
	/ (self tokenFor: '>=')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   882
	/	(self tokenFor: '<')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   883
	/	(self tokenFor: '>')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   884
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   885
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   886
selector 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   887
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   888
	^	(	(self tokenFor: '.') , identifier, arguments optional )
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   889
		/(	(self tokenFor: '.'), (self  thisKW))
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   890
		/(	(self tokenFor: '.'), (self  superKW), superSuffix)
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   891
		/	innerCreator 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   892
		/(	(self tokenFor: '['), expression , (self tokenFor: ']'))
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   893
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   894
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   895
shiftExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   896
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   897
	^ additiveExpression,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   898
	(shiftOperator , additiveExpression) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   899
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   900
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   901
shiftOperator 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   902
        "/self flag: 'maybe it should be detokenized, check the behavior with javac'.
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   903
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   904
        ^ (self tokenFor: '<<')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   905
        / (self tokenFor: '>>>')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   906
        /       (self tokenFor: '>>')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   907
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   908
    "Modified: / 23-08-2011 / 00:25:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   909
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   910
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   911
superSuffix 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   912
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   913
	^ arguments 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   914
	/ (	(self tokenFor: '.'), typeArguments optional ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   915
		identifier ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   916
		arguments optional)
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   917
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   918
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   919
unaryExpression 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   920
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   921
	^ (((self tokenFor: '++')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   922
		/(self tokenFor: '+')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   923
		/(self tokenFor: '--')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   924
		/(self tokenFor: '-')),
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   925
			unaryExpression)
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   926
	/unaryExpressionNotPlusMinus
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   927
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   928
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   929
unaryExpressionNotPlusMinus 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   930
	
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   931
	^ ( ( 	(self tokenFor: '~') 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   932
			/(self tokenFor: '!!') ) , unaryExpression )
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   933
	/castExpression
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   934
	/ (	primary,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   935
		selector star,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   936
		(	(self tokenFor: '++')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   937
			/(self tokenFor: '--')) optional)
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   938
! !
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   939
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   940
!JavaParserII methodsFor:'grammar-modifiers'!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   941
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   942
classModifierNotAnnotation
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   943
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   944
        ^       (self abstractKW) 
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   945
        /       (self finalKW) 
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   946
        /       (self protectedKW) 
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   947
        /       (self privateKW) 
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   948
        /       (self publicKW) 
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   949
        /       (self staticKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   950
        /       (self strictfpKW)
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   951
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   952
    "Modified (format): / 10-03-2012 / 23:39:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   953
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   954
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   955
classModifiers
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   956
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   957
    ^ (classModifierNotAnnotation / annotation) star
1412
93b28a7963b0 Fixes and improvements in parser
vranyj1
parents: 1403
diff changeset
   958
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   959
    "Modified (format): / 10-03-2012 / 23:55:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   960
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   961
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   962
variableModifiers 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   963
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   964
	^((self  finalKW) 
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   965
	  / annotation) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   966
! !
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   967
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   968
!JavaParserII methodsFor:'grammar-statements'!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   969
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   970
assertStatement 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   971
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   972
	^ (self assertKW) , expression , 
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   973
	((self tokenFor: ':'), expression ) optional ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   974
	(self tokenFor: ';')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   975
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   976
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   977
basicForStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   978
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   979
	^ (self  forKW) ,
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   980
	(self tokenFor: '('),
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   981
		forInit optional, (self tokenFor: ';'),
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   982
		expression , (self tokenFor: ';'),
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   983
		expressionList optional,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   984
	(self tokenFor: ')'),
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   985
	statement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   986
		
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   987
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   988
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   989
blockStatement  
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   990
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   991
	^ localVariableDeclarationStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   992
	/ classOrInterfaceDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   993
	/ statement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   994
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   995
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   996
breakStatement 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   997
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
   998
	^ (self  breakKW) , identifier optional , (self tokenFor: ';')
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
   999
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1000
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1001
catchClause
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1002
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1003
	^ (self  catchKW) ,
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1004
	(self tokenFor: '(') ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1005
		formalParameter ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1006
	(self tokenFor: ')'), 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1007
	block
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1008
	
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1009
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1010
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1011
catches 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1012
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1013
	^ catchClause , catchClause star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1014
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1015
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1016
continueStatement 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1017
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1018
	^ (self tokenFor: 'continue') , identifier optional , (self tokenFor: ';')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1019
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1020
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1021
doStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1022
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1023
	^(self  doKW) , statement ,
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1024
	(self  whileKW) , parExpression ,
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1025
	(self tokenFor: ';')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1026
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1027
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1028
emptyStatement 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1029
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1030
	^ (self tokenFor: ';')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1031
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1032
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1033
enhancedForStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1034
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1035
	^ (self  forKW) , 
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1036
	(self tokenFor: '(') , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1037
		variableModifiers , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1038
		type , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1039
		identifier , 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1040
		(self tokenFor: ':'),
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1041
		expression,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1042
	(self tokenFor: ')'),
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1043
	statement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1044
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1045
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1046
expressionList 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1047
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1048
	^ expression , ((self tokenFor: ','), expression ) star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1049
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1050
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1051
expressionStatement 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1052
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1053
	^ expression , (self tokenFor: ';')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1054
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1055
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1056
forInit
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1057
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1058
	^ localVariableDeclaration 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1059
	/ expressionList 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1060
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1061
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1062
forStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1063
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1064
	^ enhancedForStatement 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1065
	/ basicForStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1066
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1067
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1068
ifStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1069
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1070
	^(self  ifKW) , parExpression , statement , 
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1071
	((self  elseKW), statement ) optional
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1072
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1073
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1074
labeledStatement 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1075
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1076
	^ identifier , (self tokenFor: ':') , statement 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1077
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1078
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1079
localVariableDeclaration
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1080
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1081
	^ variableModifiers , type , variableDeclarators 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1082
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1083
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1084
localVariableDeclarationStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1085
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1086
	^ localVariableDeclaration , (self tokenFor: ';')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1087
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1088
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1089
returnStatement 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1090
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1091
	^ (self  returnKW) , expression optional , (self tokenFor: ';')
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1092
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1093
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1094
statement 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1095
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1096
	^ block
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1097
	/ assertStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1098
	/ ifStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1099
	/ forStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1100
	/ whileStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1101
	/ doStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1102
	/ tryStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1103
	/ switchStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1104
	/ synchronizedStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1105
	/ returnStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1106
	/ throwStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1107
	/ breakStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1108
	/ continueStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1109
	/ expressionStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1110
	/ labeledStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1111
	/ emptyStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1112
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1113
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1114
switchBlockStatementGroup
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1115
	
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1116
	^ switchLabel , blockStatement star
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1117
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1118
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1119
switchLabel 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1120
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1121
	^ ((self  caseKW) , expression , (self tokenFor: ':'))
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1122
	/ ((self  defaultKW), (self tokenFor: ':'))
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1123
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1124
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1125
switchStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1126
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1127
	^(self  switchKW) , parExpression , 
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1128
	(self tokenFor: '{'),
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1129
		switchBlockStatementGroup star ,
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1130
	(self tokenFor: '}')
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1131
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1132
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1133
synchronizedStatement 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1134
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1135
	^ (self  synchronizedKW) , parExpression , block
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1136
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1137
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1138
throwStatement 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1139
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1140
	^ (self  throwKW) , expression , (self tokenFor: ';')
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1141
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1142
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1143
tryStatement 
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1144
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1145
	^ (self  tryKW) , block ,
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1146
	(	(catches , (self  finallyKW) , block)
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1147
		/ catches
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1148
		/ ((self  finallyKW), block)
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1149
	)
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1150
!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1151
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1152
whileStatement
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1153
1415
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1154
	^(self  whileKW) , parExpression , statement
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1155
! !
6b0bbeb08b5a Fixes in Parser
vranyj1
parents: 1412
diff changeset
  1156
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1157
!JavaParserII class methodsFor:'documentation'!
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1158
1879
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
  1159
version_HG
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
  1160
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
  1161
    ^ '$Changeset: <not expanded> $'
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
  1162
!
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
  1163
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1164
version_SVN
1879
7d232ff32dde Refactoring of JavaParserII>>importDeclaration
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1818
diff changeset
  1165
    ^ '§Id§'
1403
1740f7ba7015 Some refactoring in Java parser and highlighter - full Java parser based on PetitParser checked in
vranyj1
parents:
diff changeset
  1166
! !