# HG changeset patch # User Jan Vrany # Date 1437763329 -3600 # Node ID 0fb1f0799fc1ae705d33be85445d65a80fe280a7 # Parent ff58cd9f1f3ceb25495d011d4bcadd45fecab6f4 Portability fix: override #new for class that implements #initialize #initialize is not sent by default. diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/Make.proto --- a/compiler/Make.proto Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/Make.proto Fri Jul 24 19:42:09 2015 +0100 @@ -34,7 +34,7 @@ # add the path(es) here:, # ********** OPTIONAL: MODIFY the next lines *** # LOCALINCLUDES=-Ifoo -Ibar -LOCALINCLUDES= -I$(INCLUDE_TOP)/stx/goodies/petitparser -I$(INCLUDE_TOP)/stx/goodies/petitparser/analyzer -I$(INCLUDE_TOP)/stx/goodies/petitparser/parsers/java -I$(INCLUDE_TOP)/stx/goodies/petitparser/parsers/smalltalk -I$(INCLUDE_TOP)/stx/goodies/refactoryBrowser/parser -I$(INCLUDE_TOP)/stx/libbasic -I$(INCLUDE_TOP)/stx/libbasic2 -I$(INCLUDE_TOP)/stx/libwidg -I$(INCLUDE_TOP)/stx/libwidg2 +LOCALINCLUDES= -I$(INCLUDE_TOP)/stx/goodies/petitparser -I$(INCLUDE_TOP)/stx/goodies/petitparser/analyzer -I$(INCLUDE_TOP)/stx/goodies/petitparser/parsers/java -I$(INCLUDE_TOP)/stx/goodies/petitparser/parsers/smalltalk -I$(INCLUDE_TOP)/stx/goodies/refactoryBrowser/parser -I$(INCLUDE_TOP)/stx/libbasic -I$(INCLUDE_TOP)/stx/libbasic2 -I$(INCLUDE_TOP)/stx/libview -I$(INCLUDE_TOP)/stx/libwidg -I$(INCLUDE_TOP)/stx/libwidg2 # if you need any additional defines for embedded C code, diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/Make.spec --- a/compiler/Make.spec Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/Make.spec Fri Jul 24 19:42:09 2015 +0100 @@ -59,8 +59,8 @@ PEGFsaTransition \ PPCArguments \ PPCBridge \ + PPCClassBuilder \ PPCCodeBlock \ - PPCClassBuilder \ PPCCodeGen \ PPCCompiledMethod \ PPCCompiler \ @@ -167,8 +167,8 @@ $(OUTDIR_SLASH)PEGFsaTransition.$(O) \ $(OUTDIR_SLASH)PPCArguments.$(O) \ $(OUTDIR_SLASH)PPCBridge.$(O) \ + $(OUTDIR_SLASH)PPCClassBuilder.$(O) \ $(OUTDIR_SLASH)PPCCodeBlock.$(O) \ - $(OUTDIR_SLASH)PPCClassBuilder.$(O) \ $(OUTDIR_SLASH)PPCCodeGen.$(O) \ $(OUTDIR_SLASH)PPCCompiledMethod.$(O) \ $(OUTDIR_SLASH)PPCCompiler.$(O) \ diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/PEGFsa.st --- a/compiler/PEGFsa.st Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/PEGFsa.st Fri Jul 24 19:42:09 2015 +0100 @@ -9,6 +9,14 @@ category:'PetitCompiler-FSA' ! +!PEGFsa class methodsFor:'instance creation'! + +new + "return an initialized instance" + + ^ self basicNew initialize. +! ! + !PEGFsa methodsFor:'accessing'! allTransitions diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/PEGFsaInterpret.st --- a/compiler/PEGFsaInterpret.st Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/PEGFsaInterpret.st Fri Jul 24 19:42:09 2015 +0100 @@ -9,6 +9,14 @@ category:'PetitCompiler-FSA' ! +!PEGFsaInterpret class methodsFor:'instance creation'! + +new + "return an initialized instance" + + ^ self basicNew initialize. +! ! + !PEGFsaInterpret methodsFor:'accessing'! debug diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/PEGFsaState.st --- a/compiler/PEGFsaState.st Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/PEGFsaState.st Fri Jul 24 19:42:09 2015 +0100 @@ -9,6 +9,14 @@ category:'PetitCompiler-FSA' ! +!PEGFsaState class methodsFor:'instance creation'! + +new + "return an initialized instance" + + ^ self basicNew initialize. +! ! + !PEGFsaState methodsFor:'accessing'! destination diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/PEGFsaTransition.st --- a/compiler/PEGFsaTransition.st Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/PEGFsaTransition.st Fri Jul 24 19:42:09 2015 +0100 @@ -9,6 +9,14 @@ category:'PetitCompiler-FSA' ! +!PEGFsaTransition class methodsFor:'instance creation'! + +new + "return an initialized instance" + + ^ self basicNew initialize. +! ! + !PEGFsaTransition methodsFor:'accessing'! characterSet diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/PPCClassBuilder.st --- a/compiler/PPCClassBuilder.st Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/PPCClassBuilder.st Fri Jul 24 19:42:09 2015 +0100 @@ -10,6 +10,14 @@ category:'PetitCompiler-Core' ! +!PPCClassBuilder class methodsFor:'instance creation'! + +new + "return an initialized instance" + + ^ self basicNew initialize. +! ! + !PPCClassBuilder methodsFor:'accessing'! compiledClass diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/PPCStarCharSetPredicateNode.st --- a/compiler/PPCStarCharSetPredicateNode.st Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/PPCStarCharSetPredicateNode.st Fri Jul 24 19:42:09 2015 +0100 @@ -9,6 +9,7 @@ category:'PetitCompiler-Nodes' ! + !PPCStarCharSetPredicateNode methodsFor:'accessing'! extendClassification: classification @@ -50,3 +51,10 @@ ^ visitor visitStarCharSetPredicateNode: self ! ! +!PPCStarCharSetPredicateNode class methodsFor:'documentation'! + +version_HG + + ^ '$Changeset: $' +! ! + diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/abbrev.stc --- a/compiler/abbrev.stc Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/abbrev.stc Fri Jul 24 19:42:09 2015 +0100 @@ -9,7 +9,6 @@ PEGFsaTransition PEGFsaTransition stx:goodies/petitparser/compiler 'PetitCompiler-FSA' 0 PPCArguments PPCArguments stx:goodies/petitparser/compiler 'PetitCompiler-Core' 0 PPCBridge PPCBridge stx:goodies/petitparser/compiler 'PetitCompiler-Core' 0 -PPCCodeBlock PPCCodeBlock stx:goodies/petitparser/compiler 'PetitCompiler-Compiler-Codegen' 0 PPCClassBuilder PPCClassBuilder stx:goodies/petitparser/compiler 'PetitCompiler-Core' 0 PPCCodeBlock PPCCodeBlock stx:goodies/petitparser/compiler 'PetitCompiler-Compiler-Codegen' 0 PPCCodeGen PPCCodeGen stx:goodies/petitparser/compiler 'PetitCompiler-Compiler-Codegen' 0 @@ -42,7 +41,6 @@ PPCCodeGenerator PPCCodeGenerator stx:goodies/petitparser/compiler 'PetitCompiler-Visitors' 0 PPCDelegateNode PPCDelegateNode stx:goodies/petitparser/compiler 'PetitCompiler-Nodes' 0 PPCEndOfFileNode PPCEndOfFileNode stx:goodies/petitparser/compiler 'PetitCompiler-Nodes' 0 -PPCInlinedMethod PPCInlinedMethod stx:goodies/petitparser/compiler 'PetitCompiler-Compiler-Codegen' 0 PPCFSACodeGen PPCFSACodeGen stx:goodies/petitparser/compiler 'PetitCompiler-Scanner' 0 PPCInlinedMethod PPCInlinedMethod stx:goodies/petitparser/compiler 'PetitCompiler-Compiler-Codegen' 0 PPCInliningVisitor PPCInliningVisitor stx:goodies/petitparser/compiler 'PetitCompiler-Visitors' 0 diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/bc.mak --- a/compiler/bc.mak Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/bc.mak Fri Jul 24 19:42:09 2015 +0100 @@ -35,7 +35,7 @@ -LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\goodies\petitparser -I$(INCLUDE_TOP)\stx\goodies\petitparser\analyzer -I$(INCLUDE_TOP)\stx\goodies\petitparser\parsers\java -I$(INCLUDE_TOP)\stx\goodies\petitparser\parsers\smalltalk -I$(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser -I$(INCLUDE_TOP)\stx\libbasic -I$(INCLUDE_TOP)\stx\libbasic2 -I$(INCLUDE_TOP)\stx\libview +LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\goodies\petitparser -I$(INCLUDE_TOP)\stx\goodies\petitparser\analyzer -I$(INCLUDE_TOP)\stx\goodies\petitparser\parsers\java -I$(INCLUDE_TOP)\stx\goodies\petitparser\parsers\smalltalk -I$(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser -I$(INCLUDE_TOP)\stx\libbasic -I$(INCLUDE_TOP)\stx\libbasic2 -I$(INCLUDE_TOP)\stx\libview -I$(INCLUDE_TOP)\stx\libwidg -I$(INCLUDE_TOP)\stx\libwidg2 LOCALDEFINES= STCLOCALOPT=-package=$(PACKAGE) -I. $(LOCALINCLUDES) -headerDir=. $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES) -varPrefix=$(LIBNAME) @@ -85,7 +85,6 @@ $(OUTDIR)PEGFsaTransition.$(O) PEGFsaTransition.$(H): PEGFsaTransition.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR) $(OUTDIR)PPCArguments.$(O) PPCArguments.$(H): PPCArguments.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR) $(OUTDIR)PPCBridge.$(O) PPCBridge.$(H): PPCBridge.st $(INCLUDE_TOP)\stx\goodies\petitparser\PPParser.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR) -$(OUTDIR)PPCCodeBlock.$(O) PPCCodeBlock.$(H): PPCCodeBlock.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR) $(OUTDIR)PPCClassBuilder.$(O) PPCClassBuilder.$(H): PPCClassBuilder.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR) $(OUTDIR)PPCCodeBlock.$(O) PPCCodeBlock.$(H): PPCCodeBlock.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR) $(OUTDIR)PPCCodeGen.$(O) PPCCodeGen.$(H): PPCCodeGen.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR) diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/benchmarks/Make.proto --- a/compiler/benchmarks/Make.proto Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/benchmarks/Make.proto Fri Jul 24 19:42:09 2015 +0100 @@ -34,7 +34,7 @@ # add the path(es) here:, # ********** OPTIONAL: MODIFY the next lines *** # LOCALINCLUDES=-Ifoo -Ibar -LOCALINCLUDES= -I$(INCLUDE_TOP)/stx/goodies/petitparser -I$(INCLUDE_TOP)/stx/goodies/petitparser/compiler -I$(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras -I$(INCLUDE_TOP)/stx/goodies/petitparser/parsers/java -I$(INCLUDE_TOP)/stx/goodies/petitparser/parsers/smalltalk -I$(INCLUDE_TOP)/stx/goodies/petitparser/parsers/smalltalk/tests -I$(INCLUDE_TOP)/stx/goodies/petitparser/tests -I$(INCLUDE_TOP)/stx/goodies/refactoryBrowser/parser -I$(INCLUDE_TOP)/stx/goodies/sunit -I$(INCLUDE_TOP)/stx/libbasic +LOCALINCLUDES= -I$(INCLUDE_TOP)/stx/goodies/petitparser -I$(INCLUDE_TOP)/stx/goodies/petitparser/compiler -I$(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras -I$(INCLUDE_TOP)/stx/goodies/petitparser/parsers/java -I$(INCLUDE_TOP)/stx/goodies/petitparser/parsers/smalltalk -I$(INCLUDE_TOP)/stx/goodies/refactoryBrowser/parser -I$(INCLUDE_TOP)/stx/libbasic # if you need any additional defines for embedded C code, @@ -104,13 +104,8 @@ cd ../../../../libbasic && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)" cd ../../../refactoryBrowser/parser && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)" cd ../../../../libbasic2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)" - cd ../../../../libview && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)" cd ../../ && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)" - cd ../../../../libview2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)" cd ../../parsers/smalltalk && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)" - cd ../../../sunit && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)" - cd ../../tests && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)" - cd ../../parsers/smalltalk/tests && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)" diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/benchmarks/PPCBenchmark.st --- a/compiler/benchmarks/PPCBenchmark.st Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/benchmarks/PPCBenchmark.st Fri Jul 24 19:42:09 2015 +0100 @@ -712,28 +712,6 @@ "Created: / 16-05-2015 / 09:44:46 / Jan Vrany " ! -teardownSmalltalkNoopParserCompiled - parser class removeFromSystem. -" - size := input inject: 0 into: [:r :e | r + e size ]. - Transcript crShow: 'Compiled Grammar time: ', time asString. - Transcript crShow: 'Time per character: ', (time / size * 1000.0) asString, ' microseconds'. -" - - "Created: / 16-05-2015 / 09:44:40 / Jan Vrany " -! - -teardownSmalltalkNoopParserTokenized - parser class removeFromSystem. -" - size := input inject: 0 into: [:r :e | r + e size ]. - Transcript crShow: 'Compiled Grammar time: ', time asString. - Transcript crShow: 'Time per character: ', (time / size * 1000.0) asString, ' microseconds'. -" - - "Created: / 16-05-2015 / 09:44:46 / Jan Vrany " -! - teardownSmalltalkParserCompiled parser class removeFromSystem. " diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/benchmarks/PPCSmalltalkNoopParser.st --- a/compiler/benchmarks/PPCSmalltalkNoopParser.st Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/benchmarks/PPCSmalltalkNoopParser.st Fri Jul 24 19:42:09 2015 +0100 @@ -12,21 +12,21 @@ !PPCSmalltalkNoopParser methodsFor:'accessing'! startExpression - "Make the sequence node has a method node as its parent and that the source is set." + "Make the sequence node has a method node as its parent and that the source is set." - ^ ([ :stream | stream collection ] asParser and , super startExpression) map: [ :source :node | - (RBMethodNode selector: #doIt body: node) - source: source. - (node statements size = 1 and: [ node temporaries isEmpty ]) - ifTrue: [ node statements first ] - ifFalse: [ node ] ] + ^ ([ :stream | stream collection ] asParser and , super startExpression) map: [ :source :node | + (RBMethodNode selector: #doIt body: node) + source: source. + (node statements size = 1 and: [ node temporaries isEmpty ]) + ifTrue: [ node statements first ] + ifFalse: [ node ] ] ! startMethod - "Make sure the method node has the source code properly set." - - ^ ([ :stream | stream collection ] asParser and , super startMethod) - map: [ :source :node | node source: source ] + "Make sure the method node has the source code properly set." + + ^ ([ :stream | stream collection ] asParser and , super startMethod) + map: [ :source :node | node source: source ] ! ! !PPCSmalltalkNoopParser methodsFor:'grammar'! @@ -100,7 +100,7 @@ ! blockArgument - ^ super blockArgument ==> #second + ^ super blockArgument ==> #second ! blockBody @@ -213,107 +213,107 @@ !PPCSmalltalkNoopParser methodsFor:'private'! addStatements: aCollection into: aNode - aCollection isNil - ifTrue: [ ^ aNode ]. - aCollection do: [ :each | - each class == PPSmalltalkToken - ifFalse: [ aNode addNode: each ] - ifTrue: [ - aNode statements isEmpty - ifTrue: [ aNode addComments: each comments ] - ifFalse: [ aNode statements last addComments: each comments ]. - aNode periods: (aNode periods asOrderedCollection - addLast: each start; - yourself) ] ]. - ^ aNode + aCollection isNil + ifTrue: [ ^ aNode ]. + aCollection do: [ :each | + each class == PPSmalltalkToken + ifFalse: [ aNode addNode: each ] + ifTrue: [ + aNode statements isEmpty + ifTrue: [ aNode addComments: each comments ] + ifFalse: [ aNode statements last addComments: each comments ]. + aNode periods: (aNode periods asOrderedCollection + addLast: each start; + yourself) ] ]. + ^ aNode ! build: aNode assignment: anArray - ^ anArray isEmpty - ifTrue: [ aNode ] - ifFalse: [ - anArray reverse - inject: aNode - into: [ :result :each | - RBAssignmentNode - variable: each first - value: result - position: each second start ] ] + ^ anArray isEmpty + ifTrue: [ aNode ] + ifFalse: [ + anArray reverse + inject: aNode + into: [ :result :each | + RBAssignmentNode + variable: each first + value: result + position: each second start ] ] ! build: aNode cascade: anArray - | messages semicolons | - ^ (anArray isNil or: [ anArray isEmpty ]) - ifTrue: [ aNode ] - ifFalse: [ - messages := OrderedCollection new: anArray size + 1. - messages addLast: aNode. - semicolons := OrderedCollection new. - anArray do: [ :each | - messages addLast: (self - build: aNode receiver - messages: (Array with: each second)). - semicolons addLast: each first start ]. - RBCascadeNode messages: messages semicolons: semicolons ] + | messages semicolons | + ^ (anArray isNil or: [ anArray isEmpty ]) + ifTrue: [ aNode ] + ifFalse: [ + messages := OrderedCollection new: anArray size + 1. + messages addLast: aNode. + semicolons := OrderedCollection new. + anArray do: [ :each | + messages addLast: (self + build: aNode receiver + messages: (Array with: each second)). + semicolons addLast: each first start ]. + RBCascadeNode messages: messages semicolons: semicolons ] ! build: aNode messages: anArray - ^ (anArray isNil or: [ anArray isEmpty ]) - ifTrue: [ aNode ] - ifFalse: [ - anArray - inject: aNode - into: [ :rec :msg | - msg isNil - ifTrue: [ rec ] - ifFalse: [ - RBMessageNode - receiver: rec - selectorParts: msg first - arguments: msg second ] ] ] + ^ (anArray isNil or: [ anArray isEmpty ]) + ifTrue: [ aNode ] + ifFalse: [ + anArray + inject: aNode + into: [ :rec :msg | + msg isNil + ifTrue: [ rec ] + ifFalse: [ + RBMessageNode + receiver: rec + selectorParts: msg first + arguments: msg second ] ] ] ! build: aTempCollection sequence: aStatementCollection - | result | - result := self - addStatements: aStatementCollection - into: RBSequenceNode new. - aTempCollection isEmpty ifFalse: [ - result - leftBar: aTempCollection first start - temporaries: aTempCollection second - rightBar: aTempCollection last start ]. - ^ result + | result | + result := self + addStatements: aStatementCollection + into: RBSequenceNode new. + aTempCollection isEmpty ifFalse: [ + result + leftBar: aTempCollection first start + temporaries: aTempCollection second + rightBar: aTempCollection last start ]. + ^ result ! buildArray: aStatementCollection - ^ self addStatements: aStatementCollection into: RBArrayNode new + ^ self addStatements: aStatementCollection into: RBArrayNode new ! buildMethod: aMethodNode - aMethodNode selectorParts - do: [ :each | aMethodNode addComments: each comments ]. - aMethodNode arguments - do: [ :each | aMethodNode addComments: each token comments ]. - aMethodNode pragmas do: [ :pragma | - aMethodNode addComments: pragma comments. - pragma selectorParts - do: [ :each | aMethodNode addComments: each comments ]. - pragma arguments do: [ :each | - each isLiteralArray - ifFalse: [ aMethodNode addComments: each token comments ] ]. - pragma comments: nil ]. - ^ aMethodNode + aMethodNode selectorParts + do: [ :each | aMethodNode addComments: each comments ]. + aMethodNode arguments + do: [ :each | aMethodNode addComments: each token comments ]. + aMethodNode pragmas do: [ :pragma | + aMethodNode addComments: pragma comments. + pragma selectorParts + do: [ :each | aMethodNode addComments: each comments ]. + pragma arguments do: [ :each | + each isLiteralArray + ifFalse: [ aMethodNode addComments: each token comments ] ]. + pragma comments: nil ]. + ^ aMethodNode ! buildString: aString - (aString isEmpty or: [ aString first ~= $' or: [ aString last ~= $' ] ]) - ifTrue: [ ^ aString ]. - ^ (aString - copyFrom: 2 - to: aString size - 1) - copyReplaceAll: '''''' - with: '''' + (aString isEmpty or: [ aString first ~= $' or: [ aString last ~= $' ] ]) + ifTrue: [ ^ aString ]. + ^ (aString + copyFrom: 2 + to: aString size - 1) + copyReplaceAll: '''''' + with: '''' ! ! !PPCSmalltalkNoopParser methodsFor:'token'! diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/benchmarks/abbrev.stc --- a/compiler/benchmarks/abbrev.stc Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/benchmarks/abbrev.stc Fri Jul 24 19:42:09 2015 +0100 @@ -3,5 +3,5 @@ # it provides information about a classes filename, category and especially namespace. PPCBenchmark PPCBenchmark stx:goodies/petitparser/compiler/benchmarks 'PetitCompiler-Benchmarks-Core' 0 PPCSmalltalkNoopParser PPCSmalltalkNoopParser stx:goodies/petitparser/compiler/benchmarks 'PetitCompiler-Benchmarks-Parsers' 0 +stx_goodies_petitparser_compiler_benchmarks stx_goodies_petitparser_compiler_benchmarks stx:goodies/petitparser/compiler/benchmarks '* Projects & Packages *' 3 PPCSmalltalkNoopParserTests PPCSmalltalkNoopParserTests stx:goodies/petitparser/compiler/benchmarks 'PetitCompiler-Benchmarks-Parsers-Tests' 1 -stx_goodies_petitparser_compiler_benchmarks stx_goodies_petitparser_compiler_benchmarks stx:goodies/petitparser/compiler/benchmarks '* Projects & Packages *' 3 diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/benchmarks/bc.mak --- a/compiler/benchmarks/bc.mak Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/benchmarks/bc.mak Fri Jul 24 19:42:09 2015 +0100 @@ -35,7 +35,7 @@ -LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\goodies\petitparser -I$(INCLUDE_TOP)\stx\goodies\petitparser\compiler -I$(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras -I$(INCLUDE_TOP)\stx\goodies\petitparser\parsers\java -I$(INCLUDE_TOP)\stx\goodies\petitparser\parsers\smalltalk -I$(INCLUDE_TOP)\stx\goodies\petitparser\parsers\smalltalk\tests -I$(INCLUDE_TOP)\stx\goodies\petitparser\tests -I$(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser -I$(INCLUDE_TOP)\stx\goodies\sunit -I$(INCLUDE_TOP)\stx\libbasic +LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\goodies\petitparser -I$(INCLUDE_TOP)\stx\goodies\petitparser\compiler -I$(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras -I$(INCLUDE_TOP)\stx\goodies\petitparser\parsers\java -I$(INCLUDE_TOP)\stx\goodies\petitparser\parsers\smalltalk -I$(INCLUDE_TOP)\stx\goodies\refactoryBrowser\parser -I$(INCLUDE_TOP)\stx\libbasic LOCALDEFINES= STCLOCALOPT=-package=$(PACKAGE) -I. $(LOCALINCLUDES) -headerDir=. $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES) -varPrefix=$(LIBNAME) @@ -54,13 +54,8 @@ pushd ..\..\..\..\libbasic & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) " pushd ..\..\..\refactoryBrowser\parser & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) " pushd ..\..\..\..\libbasic2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) " - pushd ..\..\..\..\libview & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) " pushd ..\.. & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) " - pushd ..\..\..\..\libview2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) " pushd ..\..\parsers\smalltalk & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) " - pushd ..\..\..\sunit & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) " - pushd ..\..\tests & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) " - pushd ..\..\parsers\smalltalk\tests & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) " diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/benchmarks/stx_goodies_petitparser_compiler_benchmarks.st --- a/compiler/benchmarks/stx_goodies_petitparser_compiler_benchmarks.st Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/benchmarks/stx_goodies_petitparser_compiler_benchmarks.st Fri Jul 24 19:42:09 2015 +0100 @@ -61,10 +61,7 @@ ^ #( #'stx:goodies/petitparser' "PPCompositeParser - superclass of PPCSmalltalkNoopParser" #'stx:goodies/petitparser/parsers/smalltalk' "PPSmalltalkGrammar - superclass of PPCSmalltalkNoopParser" - #'stx:goodies/petitparser/parsers/smalltalk/tests' "PPSmalltalkGrammarTests - superclass of PPCSmalltalkNoopParserTests" - #'stx:goodies/petitparser/tests' "PPAbstractParserTest - superclass of PPCSmalltalkNoopParserTests" - #'stx:goodies/sunit' "TestAsserter - superclass of PPCSmalltalkNoopParserTests" - #'stx:libbasic' "LibraryDefinition - superclass of stx_goodies_petitparser_compiler_benchmarks" + #'stx:libbasic' "Autoload - superclass of PPCSmalltalkNoopParserTests" ) ! @@ -108,8 +105,8 @@ " or ( attributes...) in load order" PPCBenchmark PPCSmalltalkNoopParser + #'stx_goodies_petitparser_compiler_benchmarks' (PPCSmalltalkNoopParserTests autoload) - #'stx_goodies_petitparser_compiler_benchmarks' ) ! diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/libInit.cc --- a/compiler/libInit.cc Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/libInit.cc Fri Jul 24 19:42:09 2015 +0100 @@ -35,7 +35,6 @@ _PEGFsaTransition_Init(pass,__pRT__,snd); _PPCArguments_Init(pass,__pRT__,snd); _PPCBridge_Init(pass,__pRT__,snd); -_PPCCodeBlock_Init(pass,__pRT__,snd); _PPCClassBuilder_Init(pass,__pRT__,snd); _PPCCodeBlock_Init(pass,__pRT__,snd); _PPCCodeGen_Init(pass,__pRT__,snd); diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/stx_goodies_petitparser_compiler.st --- a/compiler/stx_goodies_petitparser_compiler.st Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/stx_goodies_petitparser_compiler.st Fri Jul 24 19:42:09 2015 +0100 @@ -77,8 +77,8 @@ #'stx:goodies/petitparser/analyzer' "PPSentinel - referenced by PPCompiledParser class>>referringParser" #'stx:goodies/refactoryBrowser/parser' "RBAssignmentNode - referenced by PPCCodeGenerator>>visitActionNode:" #'stx:libbasic2' "IdentityBag - referenced by PEGFsa>>checkTransitionsIdentity" + #'stx:libview' "Color - referenced by PEGFsa>>viewGraphOn:" #'stx:libwidg' "ScrollableView - referenced by PPCNode>>inspector2TabTree" - #'stx:libview' "Color - referenced by PEGFsa>>viewGraphOn:" #'stx:libwidg2' "HierarchicalListView - referenced by PPCNode>>inspector2TabTree" ) ! @@ -119,7 +119,6 @@ PEGFsaTransition PPCArguments PPCBridge - PPCCodeBlock PPCClassBuilder PPCCodeBlock PPCCodeGen diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/tests/PPCCodeGeneratorTest.st --- a/compiler/tests/PPCCodeGeneratorTest.st Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/tests/PPCCodeGeneratorTest.st Fri Jul 24 19:42:09 2015 +0100 @@ -917,48 +917,6 @@ "Created: / 22-05-2015 / 11:47:09 / Jan Vrany " ! -testSequenceOptInlined1 - | a b bOpt | - - a := $a asParser asCompilerNode. - b := $b asParser asCompilerNode. - bOpt := PPCOptionalNode new - child: b ; - markForInline; - yourself. - node := PPCSequenceNode new - children: { a . bOpt }; - yourself. - self compileTree: node. - - self assert: parser parse: 'ab' to: #($a $b ) end: 2. - self assert: parser parse: 'a' to: #( $a nil ) end: 1. - - "Created: / 22-05-2015 / 11:47:11 / Jan Vrany " -! - -testSequenceOptInlined2 - | a b bOpt | - - a := $a asParser asCompilerNode. - a markForInline. - b := $b asParser asCompilerNode. - b markForInline. - bOpt := PPCOptionalNode new - child: b ; - markForInline; - yourself. - node := PPCSequenceNode new - children: { a . bOpt }; - yourself. - self compileTree: node. - - self assert: parser parse: 'ab' to: #($a $b ) end: 2. - self assert: parser parse: 'a' to: #( $a nil ) end: 1. - - "Created: / 22-05-2015 / 11:47:09 / Jan Vrany " -! - testStarAnyNode arguments cacheFirstFollow: false. node := PPCStarAnyNode new diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/tests/PPCUniversalTest.st --- a/compiler/tests/PPCUniversalTest.st Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/tests/PPCUniversalTest.st Fri Jul 24 19:42:09 2015 +0100 @@ -10,6 +10,7 @@ category:'PetitCompiler-Tests-Core-Universal' ! + !PPCUniversalTest methodsFor:'context'! context @@ -29,10 +30,12 @@ tearDown | parserClass | - parserClass := (Smalltalk at: arguments name ifAbsent: [nil]). + parserClass := (Smalltalk at: arguments parserName ifAbsent: [nil]). parserClass notNil ifTrue:[ parserClass removeFromSystem ]. + + "Modified: / 24-07-2015 / 19:21:41 / Jan Vrany " ! ! !PPCUniversalTest methodsFor:'tests - compiling'! @@ -577,3 +580,10 @@ yourself. ! ! +!PPCUniversalTest class methodsFor:'documentation'! + +version_HG + + ^ '$Changeset: $' +! ! + diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/tests/extras/Make.proto --- a/compiler/tests/extras/Make.proto Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/tests/extras/Make.proto Fri Jul 24 19:42:09 2015 +0100 @@ -108,7 +108,6 @@ cd ../../../../../libview2 && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)" cd ../../../../sunit && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)" cd ../../../tests && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)" - cd ../../../parsers/java && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)" diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/tests/extras/abbrev.stc --- a/compiler/tests/extras/abbrev.stc Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/tests/extras/abbrev.stc Fri Jul 24 19:42:09 2015 +0100 @@ -9,11 +9,8 @@ PPCompiledExpressionGrammarResource PPCompiledExpressionGrammarResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1 PPCompiledExpressionGrammarTest PPCompiledExpressionGrammarTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1 PPCompiledJavaResource PPCompiledJavaResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Java' 1 -PPCompiledJavaSyntaxTest PPCompiledJavaSyntaxTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Java' 1 PPCompiledSmalltalkGrammarResource PPCompiledSmalltalkGrammarResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1 PPCompiledSmalltalkGrammarTests PPCompiledSmalltalkGrammarTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1 -PPCompiledSmalltalkParserResource PPCompiledSmalltalkParserResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1 -PPCompiledSmalltalkParserTests PPCompiledSmalltalkParserTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1 PPExpressionGrammar PPExpressionGrammar stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 0 PPExpressionGrammarTest PPExpressionGrammarTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1 PPLL1ExpressionGrammar PPLL1ExpressionGrammar stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 0 @@ -24,11 +21,14 @@ PPTokenizedLL1ExpressionGrammarTest PPTokenizedLL1ExpressionGrammarTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1 PPTokenizedSmalltalkGrammarResource PPTokenizedSmalltalkGrammarResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1 PPTokenizedSmalltalkGrammarTests PPTokenizedSmalltalkGrammarTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1 -PPTokenizedSmalltalkParserResource PPTokenizedSmalltalkParserResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1 -PPTokenizedSmalltalkParserTests PPTokenizedSmalltalkParserTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1 stx_goodies_petitparser_compiler_tests_extras stx_goodies_petitparser_compiler_tests_extras stx:goodies/petitparser/compiler/tests/extras '* Projects & Packages *' 3 PPCompiledExpressionsVerificationTest PPCompiledExpressionsVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1 PPCompiledSmalltalkVerificationTest PPCompiledSmalltalkVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1 PPTokenizedExpressionsVerificationTest PPTokenizedExpressionsVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1 +PPTokenizedSmalltalkVerificationTest PPTokenizedSmalltalkVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1 +PPCompiledJavaSyntaxTest PPCompiledJavaSyntaxTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Java' 1 +PPCompiledSmalltalkParserResource PPCompiledSmalltalkParserResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1 +PPCompiledSmalltalkParserTests PPCompiledSmalltalkParserTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1 +PPTokenizedSmalltalkParserResource PPTokenizedSmalltalkParserResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1 +PPTokenizedSmalltalkParserTests PPTokenizedSmalltalkParserTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1 PPTokenizedSmalltalkParserVerificationTest PPTokenizedSmalltalkParserVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1 -PPTokenizedSmalltalkVerificationTest PPTokenizedSmalltalkVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1 diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/tests/extras/bc.mak --- a/compiler/tests/extras/bc.mak Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/tests/extras/bc.mak Fri Jul 24 19:42:09 2015 +0100 @@ -58,7 +58,6 @@ pushd ..\..\..\..\..\libview2 & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) " pushd ..\..\..\..\sunit & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) " pushd ..\..\..\tests & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) " - pushd ..\..\..\parsers\java & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) " diff -r ff58cd9f1f3c -r 0fb1f0799fc1 compiler/tests/extras/stx_goodies_petitparser_compiler_tests_extras.st --- a/compiler/tests/extras/stx_goodies_petitparser_compiler_tests_extras.st Fri Jul 24 15:37:23 2015 +0100 +++ b/compiler/tests/extras/stx_goodies_petitparser_compiler_tests_extras.st Fri Jul 24 19:42:09 2015 +0100 @@ -84,10 +84,9 @@ ^ #( #'stx:goodies/petitparser' "PPCompositeParser - superclass of PPExpressionGrammar" - #'stx:goodies/petitparser/parsers/java' "PPJavaLexiconTest - superclass of PPCompiledJavaSyntaxTest" #'stx:goodies/petitparser/tests' "PPAbstractParserTest - superclass of PPCCompiledJavaVerificationTest" #'stx:goodies/sunit' "TestAsserter - superclass of PPCCompiledJavaVerificationTest" - #'stx:libbasic' "LibraryDefinition - superclass of stx_goodies_petitparser_compiler_tests_extras" + #'stx:libbasic' "Autoload - superclass of PPCompiledJavaSyntaxTest" ) ! @@ -103,6 +102,7 @@ ^ #( #'stx:goodies/petitparser/compiler' "PPCArguments - referenced by PPCSmalltalkTests>>setUp" + #'stx:goodies/petitparser/parsers/java' "PPJavaSyntax - referenced by PPCCompiledJavaVerificationTest>>javaSyntax" #'stx:goodies/petitparser/parsers/smalltalk' "PPSmalltalkGrammar - referenced by PPCSmalltalkVerificationTest>>smalltalkGrammar" #'stx:libbasic2' "Random - referenced by PPCResources>>expressionOfSize:stream:" ) @@ -136,11 +136,8 @@ PPCompiledExpressionGrammarResource PPCompiledExpressionGrammarTest PPCompiledJavaResource - (PPCompiledJavaSyntaxTest autoload) PPCompiledSmalltalkGrammarResource PPCompiledSmalltalkGrammarTests - (PPCompiledSmalltalkParserResource autoload) - (PPCompiledSmalltalkParserTests autoload) PPExpressionGrammar PPExpressionGrammarTest PPLL1ExpressionGrammar @@ -151,13 +148,16 @@ PPTokenizedLL1ExpressionGrammarTest PPTokenizedSmalltalkGrammarResource PPTokenizedSmalltalkGrammarTests - (PPTokenizedSmalltalkParserResource autoload) - (PPTokenizedSmalltalkParserTests autoload) #'stx_goodies_petitparser_compiler_tests_extras' PPCompiledExpressionsVerificationTest PPCompiledSmalltalkVerificationTest PPTokenizedExpressionsVerificationTest PPTokenizedSmalltalkVerificationTest + (PPCompiledJavaSyntaxTest autoload) + (PPCompiledSmalltalkParserResource autoload) + (PPCompiledSmalltalkParserTests autoload) + (PPTokenizedSmalltalkParserResource autoload) + (PPTokenizedSmalltalkParserTests autoload) (PPTokenizedSmalltalkParserVerificationTest autoload) ) ! diff -r ff58cd9f1f3c -r 0fb1f0799fc1 islands/PPNonEmptyParser.st --- a/islands/PPNonEmptyParser.st Fri Jul 24 15:37:23 2015 +0100 +++ b/islands/PPNonEmptyParser.st Fri Jul 24 19:42:09 2015 +0100 @@ -12,6 +12,7 @@ PPNonEmptyParser comment:'I return failure, if the delegate parser did not consumed any input.' ! + !PPNonEmptyParser methodsFor:'parsing'! parseOn: aPPContext @@ -26,3 +27,10 @@ ^ result ! ! +!PPNonEmptyParser class methodsFor:'documentation'! + +version_HG + + ^ '$Changeset: $' +! ! +