--- a/compiler/tests/extras/Make.proto Thu Jul 30 17:31:18 2015 +0100
+++ b/compiler/tests/extras/Make.proto Fri Jul 31 07:57:23 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/parsers/smalltalk -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/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/sunit -I$(INCLUDE_TOP)/stx/libbasic -I$(INCLUDE_TOP)/stx/libbasic2
# if you need any additional defines for embedded C code,
@@ -103,7 +103,13 @@
prereq:
cd ../../../../../libbasic && $(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 ../../../../sunit && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+ cd ../../../tests && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+ cd ../../../parsers/java && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
+ cd ../../../parsers/smalltalk/tests && $(MAKE) "CFLAGS_LOCAL=$(GLOBALDEFINES)"
@@ -125,10 +131,16 @@
# BEGINMAKEDEPEND --- do not remove this line; make depend needs it
$(OUTDIR)PPCLRPNode.$(O) PPCLRPNode.$(H): PPCLRPNode.st $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)PPCLRPParser.$(O) PPCLRPParser.$(H): PPCLRPParser.st $(INCLUDE_TOP)/stx/goodies/petitparser/PPCompositeParser.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/PPDelegateParser.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/PPParser.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)PPCLRPParserSmokeTest.$(O) PPCLRPParserSmokeTest.$(H): PPCLRPParserSmokeTest.st $(INCLUDE_TOP)/stx/goodies/petitparser/tests/PPAbstractParserTest.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/tests/PPCompositeParserTest.$(H) $(INCLUDE_TOP)/stx/goodies/sunit/TestAsserter.$(H) $(INCLUDE_TOP)/stx/goodies/sunit/TestCase.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)PPCLRPSourcesResource.$(O) PPCLRPSourcesResource.$(H): PPCLRPSourcesResource.st $(INCLUDE_TOP)/stx/goodies/sunit/TestAsserter.$(H) $(INCLUDE_TOP)/stx/goodies/sunit/TestResource.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)PPCLRPAction.$(O) PPCLRPAction.$(H): PPCLRPAction.st $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)PPCLRPCompiledParserSmokeTest.$(O) PPCLRPCompiledParserSmokeTest.$(H): PPCLRPCompiledParserSmokeTest.st $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPParserSmokeTest.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/tests/PPAbstractParserTest.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/tests/PPCompositeParserTest.$(H) $(INCLUDE_TOP)/stx/goodies/sunit/TestAsserter.$(H) $(INCLUDE_TOP)/stx/goodies/sunit/TestCase.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)PPCLRPContainedElement.$(O) PPCLRPContainedElement.$(H): PPCLRPContainedElement.st $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)PPCLRPSpawn.$(O) PPCLRPSpawn.$(H): PPCLRPSpawn.st $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)PPCLRPComment.$(O) PPCLRPComment.$(H): PPCLRPComment.st $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPContainedElement.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)PPCLRPCompiledParserSmokeTest_Tokenized.$(O) PPCLRPCompiledParserSmokeTest_Tokenized.$(H): PPCLRPCompiledParserSmokeTest_Tokenized.st $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPCompiledParserSmokeTest.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPParserSmokeTest.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/tests/PPAbstractParserTest.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/tests/PPCompositeParserTest.$(H) $(INCLUDE_TOP)/stx/goodies/sunit/TestAsserter.$(H) $(INCLUDE_TOP)/stx/goodies/sunit/TestCase.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)PPCLRPCompiledParserSmokeTest_Universal.$(O) PPCLRPCompiledParserSmokeTest_Universal.$(H): PPCLRPCompiledParserSmokeTest_Universal.st $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPCompiledParserSmokeTest.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPParserSmokeTest.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/tests/PPAbstractParserTest.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/tests/PPCompositeParserTest.$(H) $(INCLUDE_TOP)/stx/goodies/sunit/TestAsserter.$(H) $(INCLUDE_TOP)/stx/goodies/sunit/TestCase.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
+$(OUTDIR)PPCLRPErrorNode.$(O) PPCLRPErrorNode.$(H): PPCLRPErrorNode.st $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPContainedElement.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)PPCLRPEvent.$(O) PPCLRPEvent.$(H): PPCLRPEvent.st $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPContainedElement.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)PPCLRPMachine.$(O) PPCLRPMachine.$(H): PPCLRPMachine.st $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPContainedElement.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
$(OUTDIR)PPCLRPOnEntry.$(O) PPCLRPOnEntry.$(H): PPCLRPOnEntry.st $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPAction.$(H) $(INCLUDE_TOP)/stx/goodies/petitparser/compiler/tests/extras/PPCLRPNode.$(H) $(INCLUDE_TOP)/stx/libbasic/Object.$(H) $(STCHDR)
--- a/compiler/tests/extras/Make.spec Thu Jul 30 17:31:18 2015 +0100
+++ b/compiler/tests/extras/Make.spec Fri Jul 31 07:57:23 2015 +0100
@@ -53,10 +53,16 @@
COMMON_CLASSES= \
PPCLRPNode \
PPCLRPParser \
+ PPCLRPParserSmokeTest \
+ PPCLRPSourcesResource \
PPCLRPAction \
+ PPCLRPCompiledParserSmokeTest \
PPCLRPContainedElement \
PPCLRPSpawn \
PPCLRPComment \
+ PPCLRPCompiledParserSmokeTest_Tokenized \
+ PPCLRPCompiledParserSmokeTest_Universal \
+ PPCLRPErrorNode \
PPCLRPEvent \
PPCLRPMachine \
PPCLRPOnEntry \
@@ -75,10 +81,16 @@
COMMON_OBJS= \
$(OUTDIR_SLASH)PPCLRPNode.$(O) \
$(OUTDIR_SLASH)PPCLRPParser.$(O) \
+ $(OUTDIR_SLASH)PPCLRPParserSmokeTest.$(O) \
+ $(OUTDIR_SLASH)PPCLRPSourcesResource.$(O) \
$(OUTDIR_SLASH)PPCLRPAction.$(O) \
+ $(OUTDIR_SLASH)PPCLRPCompiledParserSmokeTest.$(O) \
$(OUTDIR_SLASH)PPCLRPContainedElement.$(O) \
$(OUTDIR_SLASH)PPCLRPSpawn.$(O) \
$(OUTDIR_SLASH)PPCLRPComment.$(O) \
+ $(OUTDIR_SLASH)PPCLRPCompiledParserSmokeTest_Tokenized.$(O) \
+ $(OUTDIR_SLASH)PPCLRPCompiledParserSmokeTest_Universal.$(O) \
+ $(OUTDIR_SLASH)PPCLRPErrorNode.$(O) \
$(OUTDIR_SLASH)PPCLRPEvent.$(O) \
$(OUTDIR_SLASH)PPCLRPMachine.$(O) \
$(OUTDIR_SLASH)PPCLRPOnEntry.$(O) \
--- a/compiler/tests/extras/PPCCompositeParserTest.st Thu Jul 30 17:31:18 2015 +0100
+++ b/compiler/tests/extras/PPCCompositeParserTest.st Fri Jul 31 07:57:23 2015 +0100
@@ -30,13 +30,24 @@
!PPCCompositeParserTest class methodsFor:'utilities'!
generateTestsFor: baseTestClass
- | compiledBaseTestClassName compiledBaseTestClass compiledUniversalTestClass compiledTokenizedTestClass |
+ | compiledBaseTestClassName |
compiledBaseTestClassName := (baseTestClass name startsWith: 'PP')
ifTrue:[ 'PPC' , (baseTestClass name copyFrom: 3 to: baseTestClass name size) ]
ifFalse:[ 'PPC' , baseTestClass name ].
compiledBaseTestClassName := compiledBaseTestClassName asSymbol.
+ ^ self generateTestsFor: baseTestClass compiledBaseTestCaseName: compiledBaseTestClassName
+
+ "Created: / 30-07-2015 / 07:10:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 31-07-2015 / 07:27:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+generateTestsFor: baseTestClass compiledBaseTestCaseName: compiledBaseTestClassName
+ | compiledBaseTestClass compiledUniversalTestClass compiledTokenizedTestClass |
+
+
+
compiledBaseTestClass := baseTestClass subclass:compiledBaseTestClassName
instanceVariableNames:''
classVariableNames:''
@@ -85,7 +96,7 @@
^ PPCConfiguration tokenizing'
classified: 'accessing'.
- "Created: / 30-07-2015 / 07:10:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Created: / 31-07-2015 / 07:26:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!PPCCompositeParserTest methodsFor:'accessing'!
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/compiler/tests/extras/PPCLRPCompiledParserSmokeTest.st Fri Jul 31 07:57:23 2015 +0100
@@ -0,0 +1,109 @@
+"{ Package: 'stx:goodies/petitparser/compiler/tests/extras' }"
+
+"{ NameSpace: Smalltalk }"
+
+PPCLRPParserSmokeTest subclass:#PPCLRPCompiledParserSmokeTest
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'PetitCompiler-Extras-Tests-LRP'
+!
+
+!PPCLRPCompiledParserSmokeTest class methodsFor:'resources'!
+
+resources
+ ^ Array with: (PPCSetUpBeforeTearDownAfterResource for: self)
+! !
+
+!PPCLRPCompiledParserSmokeTest class methodsFor:'testing'!
+
+isAbstract
+ ^ self == PPCLRPCompiledParserSmokeTest
+
+ "Modified: / 31-07-2015 / 07:53:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!PPCLRPCompiledParserSmokeTest methodsFor:'accessing'!
+
+compiledParser
+ ^ self compiledParserClass new
+
+ "Created: / 29-07-2015 / 17:00:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+compiledParserClass
+ ^ Smalltalk at: self compiledParserClassName
+
+ "Created: / 29-07-2015 / 16:54:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+compiledParserClassName
+ "Return the name of the compiled parser"
+
+ ^ (self petitParserClass name , 'C_' ,
+ "This is bit hacky!!"
+ ((self compilerConfiguration isKindOf: PPCTokenizingConfiguration) ifTrue:[ 'Tokenizing' ] ifFalse:[ 'Universal' ])) asSymbol
+
+ "Created: / 29-07-2015 / 16:54:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+compilerConfiguration
+ "Return configuration to use when compiling parser (as instance of PPCConfiguration)"
+
+ ^ self subclassResponsibility
+
+ "Created: / 29-07-2015 / 16:53:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+parserClass
+ ^ self compiledParserClass
+
+ "Modified: / 29-07-2015 / 18:43:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+parserInstanceFor: aSymbol
+ ^ self parserClass new startSymbol: aSymbol
+
+ "Modified: / 29-07-2015 / 18:43:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+petitParser
+ ^ self petitParserClass new
+
+ "Created: / 29-07-2015 / 17:01:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+petitParserClass
+ ^ PPCLRPParser
+! !
+
+!PPCLRPCompiledParserSmokeTest methodsFor:'context'!
+
+context
+
+ ^ PPCContext new
+! !
+
+!PPCLRPCompiledParserSmokeTest methodsFor:'setup & teardown'!
+
+setUpBefore
+ "Called before any of my tests is run (when resources are set up)"
+ | time configuration |
+
+ configuration := self compilerConfiguration.
+ configuration arguments parserName: self compiledParserClassName.
+ time := Time millisecondsToRun: [
+ self petitParser compileWithConfiguration: configuration.
+ ].
+ Transcript show: self petitParserClass name ; show:' compiled in: '; show: time asString; show: 'ms'; cr.
+
+ "Created: / 29-07-2015 / 16:29:38 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+ "Modified: / 29-07-2015 / 18:40:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+tearDownAfter
+ "Called after all my tests are ryn(when resources are torn down)"
+
+ "Created: / 29-07-2015 / 16:33:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/compiler/tests/extras/PPCLRPCompiledParserSmokeTest_Tokenized.st Fri Jul 31 07:57:23 2015 +0100
@@ -0,0 +1,17 @@
+"{ Package: 'stx:goodies/petitparser/compiler/tests/extras' }"
+
+"{ NameSpace: Smalltalk }"
+
+PPCLRPCompiledParserSmokeTest subclass:#PPCLRPCompiledParserSmokeTest_Tokenized
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'PetitCompiler-Extras-Tests-LRP'
+!
+
+!PPCLRPCompiledParserSmokeTest_Tokenized methodsFor:'accessing'!
+
+compilerConfiguration
+ ^ PPCConfiguration tokenizing
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/compiler/tests/extras/PPCLRPCompiledParserSmokeTest_Universal.st Fri Jul 31 07:57:23 2015 +0100
@@ -0,0 +1,17 @@
+"{ Package: 'stx:goodies/petitparser/compiler/tests/extras' }"
+
+"{ NameSpace: Smalltalk }"
+
+PPCLRPCompiledParserSmokeTest subclass:#PPCLRPCompiledParserSmokeTest_Universal
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'PetitCompiler-Extras-Tests-LRP'
+!
+
+!PPCLRPCompiledParserSmokeTest_Universal methodsFor:'accessing'!
+
+compilerConfiguration
+ ^ PPCConfiguration universal
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/compiler/tests/extras/PPCLRPErrorNode.st Fri Jul 31 07:57:23 2015 +0100
@@ -0,0 +1,30 @@
+"{ Package: 'stx:goodies/petitparser/compiler/tests/extras' }"
+
+"{ NameSpace: Smalltalk }"
+
+PPCLRPContainedElement subclass:#PPCLRPErrorNode
+ instanceVariableNames:'block interpretedBlock'
+ classVariableNames:''
+ poolDictionaries:''
+ category:'PetitCompiler-Extras-Tests-LRP'
+!
+
+!PPCLRPErrorNode methodsFor:'error handing'!
+
+onErrorNode: aBlock parser: aLRPParser
+
+ aLRPParser failWithValue: (aBlock value: self)
+! !
+
+!PPCLRPErrorNode methodsFor:'testing'!
+
+isError
+ ^true
+! !
+
+!PPCLRPErrorNode methodsFor:'visiting'!
+
+acceptVisitor: aLRPNodeVisitor
+ aLRPNodeVisitor visitErrorNode: self.
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/compiler/tests/extras/PPCLRPParserSmokeTest.st Fri Jul 31 07:57:23 2015 +0100
@@ -0,0 +1,40 @@
+"{ Package: 'stx:goodies/petitparser/compiler/tests/extras' }"
+
+"{ NameSpace: Smalltalk }"
+
+PPCompositeParserTest subclass:#PPCLRPParserSmokeTest
+ instanceVariableNames:''
+ classVariableNames:''
+ poolDictionaries:''
+ category:'PetitCompiler-Extras-Tests-LRP'
+!
+
+!PPCLRPParserSmokeTest class methodsFor:'accessing'!
+
+resources
+ ^ Array with:PPCLRPSourcesResource
+
+ "Created: / 30-07-2015 / 19:07:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!PPCLRPParserSmokeTest methodsFor:'accessing'!
+
+parserClass
+ "superclass PPCompositeParserTest says that I am responsible to implement this method"
+
+ ^ PPCLRPParser
+
+ "Modified: / 30-07-2015 / 19:07:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!PPCLRPParserSmokeTest methodsFor:'tests'!
+
+testSmoke1
+
+ PPCLRPSourcesResource current sources do:[:source |
+ self parse: source
+ ].
+
+ "Created: / 30-07-2015 / 19:07:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/compiler/tests/extras/PPCLRPSourcesResource.st Fri Jul 31 07:57:23 2015 +0100
@@ -0,0 +1,417 @@
+"{ Package: 'stx:goodies/petitparser/compiler/tests/extras' }"
+
+"{ NameSpace: Smalltalk }"
+
+TestResource subclass:#PPCLRPSourcesResource
+ instanceVariableNames:'sources'
+ classVariableNames:''
+ poolDictionaries:''
+ category:'PetitCompiler-Extras-Tests-LRP'
+!
+
+!PPCLRPSourcesResource methodsFor:'accessing'!
+
+sources
+ sources isNil ifTrue:[
+ sources := #(
+ doranewbridge
+ doraultratouch
+ escapament
+ follower
+ linebounderfollower
+ linecrossfollower
+ rtimer
+ stairsclimber
+ stopwatch
+ timer
+ ) collect:[:e | self perform: e].
+ ].
+ ^ sources
+
+ "Created: / 30-07-2015 / 19:04:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!PPCLRPSourcesResource methodsFor:'sources - individual'!
+
+doranewbridge
+^ ';; A Random Space Explorer behavior for a differential drive robot
+;; Wall collisions are detected with the ultrasonic sensor
+
+(var speed :=[20])
+(var timeout := [1000 atRandom])
+(machine Dora
+ (state forward
+ (onentry [
+ robot motorA startAtSpeed: speed.
+ robot motorD startAtSpeed: speed.
+ ])
+ (onexit [robot fullStop]))
+ (state shock
+ (onentry [
+ robot motorA startAtSpeed: speed negated.
+ robot motorD startAtSpeed: speed negated.
+ ])
+ (onexit [robot fullStop]))
+ (state turn
+ (onentry [
+ robot motorA startAtSpeed: speed.
+ robot motorD startAtSpeed: speed negated
+ ])
+ (onexit [
+ robot fullStop.
+ timeout := 1000 atRandom
+ ]))
+ (ontime 500 shock -> turn st)
+ (ontime timeout turn -> forward tf)
+ (on tooclose forward -> shock fs)
+ (event tooclose [robot sensor2 read < 200])
+)
+(spawn Dora forward)
+'
+
+ "Created: / 30-07-2015 / 17:39:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+doraultratouch
+^ ';; A Random Space Explorer behavior for a differential drive robot
+;; Wall collisions are detected with the ultrasonic sensor and touch sensors
+
+(var speed :=[20])
+(var timeout := [1000 atRandom])
+(machine Dora
+ (state forward
+ (onentry [
+ robot motorA startAtSpeed: speed.
+ robot motorD startAtSpeed: speed.
+ ])
+ (onexit [robot fullStop]))
+ (state shock
+ (onentry [
+ robot motorA startAtSpeed: speed negated.
+ robot motorD startAtSpeed: speed negated.
+ ])
+ (onexit [robot fullStop]))
+ (state turn
+ (onentry [
+ robot motorA startAtSpeed: speed.
+ robot motorD startAtSpeed: speed negated
+ ])
+ (onexit [
+ robot fullStop.
+ timeout := 1000 atRandom
+ ]))
+ (ontime 500 shock -> turn st)
+ (ontime timeout turn -> forward tf)
+ (on tooclose forward -> shock fs)
+ (on shockLeft forward -> shock sl)
+ (on shockRight forward -> shock sf)
+ (event tooclose [robot sensor2 read < 200])
+ (event shockLeft [robot sensor4 read = 1])
+ (event shockRight [robot sensor1 read = 1])
+)
+(spawn Dora forward)
+
+'
+
+ "Created: / 30-07-2015 / 17:40:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+escapament
+^ ';;; A simple escapement
+(machine esc
+ (state tick)
+ (state tock)
+ (ontime 500 tick -> tock tito)
+ (ontime 500 tock -> tick toti)
+)
+(spawn esc tick)'
+
+ "Created: / 30-07-2015 / 17:37:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+follower
+^ ';; A line follower for a differential drive robot
+;; Uses the Lego color sensor,
+;; position is front and center, and pointed to the line (down)
+(var sensor := [robot sensor3])
+(var mright := [robot motorA])
+(var mleft := [robot motorD])
+(var speed := [4])
+(machine follower
+ (state init
+ (onentry [sensor setMode: #Mode2])
+ )
+ (state moving
+ (onentry [
+ mright startAtSpeed: speed * 2.
+ mleft startAtSpeed: speed * 2.
+ ])
+ (onexit [robot fullStop])
+ )
+ (state looking
+ (machine lookalgo
+ (var looktime := [1000])
+ (state lookright
+ (onentry
+ [mright startAtSpeed: speed negated.
+ mleft startAtSpeed: speed.]))
+ (state lookleft
+ )
+ (state centerfromright
+ (onentry
+ [mright startAtSpeed: speed.
+ mleft startAtSpeed: speed negated.]))
+ (state centerfromleft
+ (onentry
+ [mright startAtSpeed: speed negated.
+ mleft startAtSpeed: speed.])
+ (onexit [looktime := looktime * 2]))
+ (ontime looktime lookright -> centerfromright tlrb)
+ (ontime looktime centerfromright -> lookleft tlr)
+ (ontime looktime lookleft -> centerfromleft tfail)
+ (ontime looktime centerfromleft -> lookright tfailb)
+ )
+ (onentry (spawn lookalgo lookright))
+ )
+ (eps init -> moving tinit)
+ (on out moving -> looking tms)
+ (event out [(sensor read = 1) not])
+ (event in [sensor read = 1])
+ (on in looking -> moving tsm)
+)
+(spawn follower init)
+
+'
+
+ "Created: / 30-07-2015 / 17:40:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+linebounderfollower
+^ ';; Line following robot for a differential drive robot
+;;; that "bounces" off the left hand side of the line
+;; Uses the Lego color sensor,
+;; position is front and center, and pointed to the line (down)
+(var sensor := [robot sensor3])
+(var mright := [robot motorA])
+(var mleft := [robot motorD])
+(machine linebounce
+ (state init
+ (onentry [sensor setMode: #Mode2.]))
+ (eps init -> white iw)
+ (state white
+ (onentry [
+ mright startAtSpeed: 4.
+ mleft startAtSpeed: 18])
+ (onexit [mright stop. mleft stop]))
+ (state black
+ (onentry [
+ mright startAtSpeed: 10.
+ mleft startAtSpeed: -4])
+ (onexit [mright stop. mleft stop]))
+ (on seeblack white -> black wb)
+ (on seewhite black -> white bw)
+ (event seeblack [sensor read = 1])
+ (event seewhite [(sensor read = 1) not])
+)
+(spawn linebounce init)
+
+'
+
+ "Created: / 30-07-2015 / 17:41:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+linecrossfollower
+^ ';;; Line following for a differential drive robot
+;;; goes forward by always crossing the line
+;; Uses the Lego color sensor,
+;; position is front and center, and pointed to the line (down)
+(var sensor := [robot sensor3])
+(var mright := [robot motorA])
+(var mleft := [robot motorD])
+(var speed := [15])
+(machine linecross
+ (state left
+ (onentry [mright startAtSpeed: speed]))
+ (state crossfl
+ (onexit [mright stop]))
+ (state right
+ (onentry [mleft startAtSpeed: speed]))
+ (state crossfr
+ (onexit [mleft stop]))
+ (on black right -> crossfr rlx)
+ (on black left -> crossfl lrx)
+ (on white crossfr -> left rl)
+ (on white crossfl -> right lr)
+ (event black [sensor read = 1])
+ (event white [(sensor read = 1) not])
+)
+(spawn linecross left)
+
+'
+
+ "Created: / 30-07-2015 / 17:41:46 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+rtimer
+^ ';;a resettable timer with 10 sec intervals
+(var minute := [0])
+(machine rtimer
+ (state zero)
+ (state ten)
+ (state twenty)
+ (state thirty)
+ (state fourty)
+ (state fifty
+ (onexit [minute := minute + 1]))
+ (ontime 10000 zero -> ten toten)
+ (ontime 10000 ten -> twenty totwenty)
+ (ontime 10000 twenty -> thirty tothirty)
+ (ontime 10000 thirty -> fourty tofourty)
+ (ontime 10000 fourty -> fifty tofifty)
+ (ontime 10000 fifty -> zero tozero)
+ (var doreset := [0])
+ (state init
+ (onentry [minute := 0.
+ doreset := 0]))
+ (on resetting *-> init reset)
+ (eps init -> zero go)
+ (event resetting [doreset = 1])
+)
+(spawn rtimer zero)
+'
+
+ "Created: / 30-07-2015 / 17:38:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+stairsclimber
+^ ';;; A stairs climber building using the MindStorm expansion set
+;;; Use the new JetStorm Bridge funcionality
+;;; Use ontime transition to estimate the second step of the climbing
+;;; Watch example in: http://youtu.be/6HXcKwMO8Fo
+
+(var backWheelsSpeed := [-50])
+(var frontWheelsSpeed := [-50])
+(var climbSpeed := [-50])
+(var startGyro := [0])
+(var deltaGyro := [4])
+(machine Stair
+ (state forward
+ (onentry [
+ robot motorA startAtSpeed: backWheelsSpeed.
+ robot motorB startAtSpeed: frontWheelsSpeed.
+ startGyro := robot sensor2 read.
+ ]
+ )
+ (onexit [
+ robot fullStop.
+ ]
+ )
+ )
+
+ (state climb
+ (onentry [
+ robot motorD startAtSpeed: climbSpeed.
+ robot motorB startAtSpeed: frontWheelsSpeed.
+ ]
+ )
+ (onexit [
+ robot fullStop.
+ ]
+ )
+ )
+
+ (state forward2
+ (onentry [
+ robot motorA startAtSpeed: backWheelsSpeed.
+ robot motorB startAtSpeed: frontWheelsSpeed.
+ ]
+ )
+ )
+
+ (state climb2
+ (onentry [
+ robot motorD startAtSpeed: climbSpeed negated.
+ ]
+ )
+ (onexit [
+ robot fullStop
+ ]
+ )
+ )
+
+ (state stop
+ (onentry [robot fullStop])
+ )
+
+ (on incline forward -> climb incline)
+ (on finishClimb climb -> forward2 finishClimb)
+ (event finishClimb [robot sensor3 read == 1])
+ (event incline [robot sensor2 read > (deltaGyro + startGyro)])
+
+ (ontime 3000 forward2 -> climb2 for2)
+ (ontime 6000 climb2 -> forward loop)
+)
+(spawn Stair forward)
+
+'
+
+ "Created: / 30-07-2015 / 17:42:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+stopwatch
+^ ';; A stopwatch.
+;; Inspect the variables start and reset,
+;; and from the inspectors change the values
+(machine stopwatch
+ (var start := [false])
+ (var reset := [false])
+ (var seconds := [0])
+ (state waiting )
+ (on e_starting waiting -> tick t_st)
+ (event e_starting [start])
+ (state tick)
+ (state tock (onexit [seconds := seconds + 1]))
+ (ontime 500 tick -> tock t_tito)
+ (ontime 500 tock -> tick t_toti)
+
+ (on e_reset *-> resetting t_reset)
+ (event e_reset [reset])
+ (state resetting
+ (onentry [reset := false. seconds := 0] ))
+ (eps resetting -> tick t_et)
+
+ (on e_stop *-> waiting t_es)
+ (event e_stop [start not])
+)
+(spawn stopwatch waiting)
+'
+
+ "Created: / 30-07-2015 / 17:38:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+timer
+^ ';; a timer with 10 sec intervals
+
+(var minute := [0])
+(machine timer
+ (state zero)
+ (state ten)
+ (state twenty)
+ (state thirty)
+ (state fourty)
+ (state fifty
+ (onexit [minute := minute + 1]))
+ (ontime 10000 zero -> ten toten)
+ (ontime 10000 ten -> twenty totwenty)
+ (ontime 10000 twenty -> thirty tothirty)
+ (ontime 10000 thirty -> fourty tofourty)
+ (ontime 10000 fourty -> fifty tofifty)
+ (ontime 10000 fifty -> zero tozero)
+)
+(spawn timer zero)
+
+'
+
+ "Created: / 30-07-2015 / 17:39:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
--- a/compiler/tests/extras/PPLL1ExpressionGrammar.st Thu Jul 30 17:31:18 2015 +0100
+++ b/compiler/tests/extras/PPLL1ExpressionGrammar.st Fri Jul 31 07:57:23 2015 +0100
@@ -9,6 +9,7 @@
category:'PetitCompiler-Extras-Tests-Expressions'
!
+
!PPLL1ExpressionGrammar methodsFor:'as yet unclassified'!
add
@@ -78,3 +79,10 @@
^ $+ asParser trimmingToken, term
! !
+!PPLL1ExpressionGrammar class methodsFor:'documentation'!
+
+version_HG
+
+ ^ '$Changeset: <not expanded> $'
+! !
+
--- a/compiler/tests/extras/abbrev.stc Thu Jul 30 17:31:18 2015 +0100
+++ b/compiler/tests/extras/abbrev.stc Fri Jul 31 07:57:23 2015 +0100
@@ -1,13 +1,46 @@
# automagically generated by the project definition
# this file is needed for stc to be able to compile modules independently.
# it provides information about a classes filename, category and especially namespace.
+PPCAbstractParserTest PPCAbstractParserTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Support' 1
+PPCCompiledJavaVerificationTest PPCCompiledJavaVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Java' 1
+PPCCompositeParserTest PPCCompositeParserTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Support' 1
PPCLRPNode PPCLRPNode stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 0
PPCLRPParser PPCLRPParser stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 0
+PPCLRPParserSmokeTest PPCLRPParserSmokeTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 1
+PPCLRPSourcesResource PPCLRPSourcesResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 1
+PPCResources PPCResources stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Support' 1
+PPCSetUpBeforeTearDownAfterResource PPCSetUpBeforeTearDownAfterResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Support' 2
+PPCSmalltalkGrammarTests PPCSmalltalkGrammarTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
+PPCSmalltalkParserTests PPCSmalltalkParserTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
+PPCSmalltalkTests PPCSmalltalkTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 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
+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
+PPLL1ExpressionGrammarTest PPLL1ExpressionGrammarTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
stx_goodies_petitparser_compiler_tests_extras stx_goodies_petitparser_compiler_tests_extras stx:goodies/petitparser/compiler/tests/extras '* Projects & Packages *' 3
+PPCExpressionGrammarTest PPCExpressionGrammarTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
+PPCExpressionGrammarVerificationTest PPCExpressionGrammarVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
+PPCLL1ExpressionGrammarTest PPCLL1ExpressionGrammarTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
PPCLRPAction PPCLRPAction stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 0
+PPCLRPCompiledParserSmokeTest PPCLRPCompiledParserSmokeTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 1
PPCLRPContainedElement PPCLRPContainedElement stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 0
PPCLRPSpawn PPCLRPSpawn stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 0
+PPCSmalltalkGrammarTests_Tokenized PPCSmalltalkGrammarTests_Tokenized stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
+PPCSmalltalkGrammarTests_Universal PPCSmalltalkGrammarTests_Universal stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
+PPCSmalltalkGrammarVerificationTest PPCSmalltalkGrammarVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
+PPCSmalltalkParserTests_Tokenized PPCSmalltalkParserTests_Tokenized stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
+PPCSmalltalkParserTests_Universal PPCSmalltalkParserTests_Universal stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
+PPCSmalltalkParserVerificationTest PPCSmalltalkParserVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
+PPCExpressionGrammarTest_Tokenized PPCExpressionGrammarTest_Tokenized stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
+PPCExpressionGrammarTest_Universal PPCExpressionGrammarTest_Universal stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
+PPCLL1ExpressionGrammarTest_Tokenized PPCLL1ExpressionGrammarTest_Tokenized stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
+PPCLL1ExpressionGrammarTest_Universal PPCLL1ExpressionGrammarTest_Universal stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
PPCLRPComment PPCLRPComment stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 0
+PPCLRPCompiledParserSmokeTest_Tokenized PPCLRPCompiledParserSmokeTest_Tokenized stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 1
+PPCLRPCompiledParserSmokeTest_Universal PPCLRPCompiledParserSmokeTest_Universal stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 1
+PPCLRPErrorNode PPCLRPErrorNode stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 0
PPCLRPEvent PPCLRPEvent stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 0
PPCLRPMachine PPCLRPMachine stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 0
PPCLRPOnEntry PPCLRPOnEntry stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 0
@@ -16,39 +49,12 @@
PPCLRPState PPCLRPState stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 0
PPCLRPTransition PPCLRPTransition stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 0
PPCLRPVariable PPCLRPVariable stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 0
+PPCSmalltalkGrammarVerificationTest_Tokenized PPCSmalltalkGrammarVerificationTest_Tokenized stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
+PPCSmalltalkGrammarVerificationTest_Universal PPCSmalltalkGrammarVerificationTest_Universal stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
+PPCSmalltalkParserVerificationTest_Tokenized PPCSmalltalkParserVerificationTest_Tokenized stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
+PPCSmalltalkParserVerificationTest_Universal PPCSmalltalkParserVerificationTest_Universal stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
+PPExpressionGrammarVerificationTest_Tokenized PPExpressionGrammarVerificationTest_Tokenized stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
+PPExpressionGrammarVerificationTest_Universal PPExpressionGrammarVerificationTest_Universal stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
PPCLRPEpsilonTransition PPCLRPEpsilonTransition stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 0
PPCLRPTimeoutTransition PPCLRPTimeoutTransition stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 0
PPCLRPWildcardTransition PPCLRPWildcardTransition stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-LRP' 0
-PPCAbstractParserTest PPCAbstractParserTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Support' 1
-PPCCompiledJavaVerificationTest PPCCompiledJavaVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Java' 1
-PPCCompositeParserTest PPCCompositeParserTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Support' 1
-PPCExpressionGrammarTest PPCExpressionGrammarTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
-PPCExpressionGrammarTest_Tokenized PPCExpressionGrammarTest_Tokenized stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
-PPCExpressionGrammarTest_Universal PPCExpressionGrammarTest_Universal stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
-PPCExpressionGrammarVerificationTest PPCExpressionGrammarVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
-PPCLL1ExpressionGrammarTest PPCLL1ExpressionGrammarTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
-PPCLL1ExpressionGrammarTest_Tokenized PPCLL1ExpressionGrammarTest_Tokenized stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
-PPCLL1ExpressionGrammarTest_Universal PPCLL1ExpressionGrammarTest_Universal stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
-PPCResources PPCResources stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Support' 1
-PPCSetUpBeforeTearDownAfterResource PPCSetUpBeforeTearDownAfterResource stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Support' 2
-PPCSmalltalkGrammarTests PPCSmalltalkGrammarTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPCSmalltalkGrammarTests_Tokenized PPCSmalltalkGrammarTests_Tokenized stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPCSmalltalkGrammarTests_Universal PPCSmalltalkGrammarTests_Universal stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPCSmalltalkGrammarVerificationTest PPCSmalltalkGrammarVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPCSmalltalkGrammarVerificationTest_Tokenized PPCSmalltalkGrammarVerificationTest_Tokenized stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPCSmalltalkGrammarVerificationTest_Universal PPCSmalltalkGrammarVerificationTest_Universal stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPCSmalltalkParserTests PPCSmalltalkParserTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPCSmalltalkParserTests_Tokenized PPCSmalltalkParserTests_Tokenized stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPCSmalltalkParserTests_Universal PPCSmalltalkParserTests_Universal stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPCSmalltalkParserVerificationTest PPCSmalltalkParserVerificationTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPCSmalltalkParserVerificationTest_Tokenized PPCSmalltalkParserVerificationTest_Tokenized stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPCSmalltalkParserVerificationTest_Universal PPCSmalltalkParserVerificationTest_Universal stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 1
-PPCSmalltalkTests PPCSmalltalkTests stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Smalltalk' 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
-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
-PPExpressionGrammarVerificationTest_Tokenized PPExpressionGrammarVerificationTest_Tokenized stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
-PPExpressionGrammarVerificationTest_Universal PPExpressionGrammarVerificationTest_Universal stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
-PPLL1ExpressionGrammar PPLL1ExpressionGrammar stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 0
-PPLL1ExpressionGrammarTest PPLL1ExpressionGrammarTest stx:goodies/petitparser/compiler/tests/extras 'PetitCompiler-Extras-Tests-Expressions' 1
--- a/compiler/tests/extras/bc.mak Thu Jul 30 17:31:18 2015 +0100
+++ b/compiler/tests/extras/bc.mak Fri Jul 31 07:57:23 2015 +0100
@@ -35,7 +35,7 @@
-LOCALINCLUDES= -I$(INCLUDE_TOP)\stx\goodies\petitparser -I$(INCLUDE_TOP)\stx\goodies\petitparser\parsers\smalltalk -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\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\sunit -I$(INCLUDE_TOP)\stx\libbasic -I$(INCLUDE_TOP)\stx\libbasic2
LOCALDEFINES=
STCLOCALOPT=-package=$(PACKAGE) -I. $(LOCALINCLUDES) -headerDir=. $(STCLOCALOPTIMIZATIONS) $(STCWARNINGS) $(LOCALDEFINES) -varPrefix=$(LIBNAME)
@@ -53,7 +53,13 @@
prereq:
pushd ..\..\..\..\..\libbasic & $(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 ..\..\..\..\sunit & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+ pushd ..\..\..\tests & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+ pushd ..\..\..\parsers\java & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
+ pushd ..\..\..\parsers\smalltalk\tests & $(MAKE_BAT) "CFLAGS_LOCAL=$(GLOBALDEFINES) "
@@ -72,10 +78,16 @@
# BEGINMAKEDEPEND --- do not remove this line; make depend needs it
$(OUTDIR)PPCLRPNode.$(O) PPCLRPNode.$(H): PPCLRPNode.st $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)PPCLRPParser.$(O) PPCLRPParser.$(H): PPCLRPParser.st $(INCLUDE_TOP)\stx\goodies\petitparser\PPCompositeParser.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\PPDelegateParser.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\PPParser.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)PPCLRPParserSmokeTest.$(O) PPCLRPParserSmokeTest.$(H): PPCLRPParserSmokeTest.st $(INCLUDE_TOP)\stx\goodies\petitparser\tests\PPAbstractParserTest.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\tests\PPCompositeParserTest.$(H) $(INCLUDE_TOP)\stx\goodies\sunit\TestAsserter.$(H) $(INCLUDE_TOP)\stx\goodies\sunit\TestCase.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)PPCLRPSourcesResource.$(O) PPCLRPSourcesResource.$(H): PPCLRPSourcesResource.st $(INCLUDE_TOP)\stx\goodies\sunit\TestAsserter.$(H) $(INCLUDE_TOP)\stx\goodies\sunit\TestResource.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)PPCLRPAction.$(O) PPCLRPAction.$(H): PPCLRPAction.st $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)PPCLRPCompiledParserSmokeTest.$(O) PPCLRPCompiledParserSmokeTest.$(H): PPCLRPCompiledParserSmokeTest.st $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPParserSmokeTest.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\tests\PPAbstractParserTest.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\tests\PPCompositeParserTest.$(H) $(INCLUDE_TOP)\stx\goodies\sunit\TestAsserter.$(H) $(INCLUDE_TOP)\stx\goodies\sunit\TestCase.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)PPCLRPContainedElement.$(O) PPCLRPContainedElement.$(H): PPCLRPContainedElement.st $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)PPCLRPSpawn.$(O) PPCLRPSpawn.$(H): PPCLRPSpawn.st $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)PPCLRPComment.$(O) PPCLRPComment.$(H): PPCLRPComment.st $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPContainedElement.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)PPCLRPCompiledParserSmokeTest_Tokenized.$(O) PPCLRPCompiledParserSmokeTest_Tokenized.$(H): PPCLRPCompiledParserSmokeTest_Tokenized.st $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPCompiledParserSmokeTest.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPParserSmokeTest.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\tests\PPAbstractParserTest.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\tests\PPCompositeParserTest.$(H) $(INCLUDE_TOP)\stx\goodies\sunit\TestAsserter.$(H) $(INCLUDE_TOP)\stx\goodies\sunit\TestCase.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)PPCLRPCompiledParserSmokeTest_Universal.$(O) PPCLRPCompiledParserSmokeTest_Universal.$(H): PPCLRPCompiledParserSmokeTest_Universal.st $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPCompiledParserSmokeTest.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPParserSmokeTest.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\tests\PPAbstractParserTest.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\tests\PPCompositeParserTest.$(H) $(INCLUDE_TOP)\stx\goodies\sunit\TestAsserter.$(H) $(INCLUDE_TOP)\stx\goodies\sunit\TestCase.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
+$(OUTDIR)PPCLRPErrorNode.$(O) PPCLRPErrorNode.$(H): PPCLRPErrorNode.st $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPContainedElement.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)PPCLRPEvent.$(O) PPCLRPEvent.$(H): PPCLRPEvent.st $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPContainedElement.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)PPCLRPMachine.$(O) PPCLRPMachine.$(H): PPCLRPMachine.st $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPContainedElement.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
$(OUTDIR)PPCLRPOnEntry.$(O) PPCLRPOnEntry.$(H): PPCLRPOnEntry.st $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPAction.$(H) $(INCLUDE_TOP)\stx\goodies\petitparser\compiler\tests\extras\PPCLRPNode.$(H) $(INCLUDE_TOP)\stx\libbasic\Object.$(H) $(STCHDR)
--- a/compiler/tests/extras/libInit.cc Thu Jul 30 17:31:18 2015 +0100
+++ b/compiler/tests/extras/libInit.cc Fri Jul 31 07:57:23 2015 +0100
@@ -29,10 +29,16 @@
__BEGIN_PACKAGE2__("libstx_goodies_petitparser_compiler_tests_extras", _libstx_goodies_petitparser_compiler_tests_extras_Init, "stx:goodies/petitparser/compiler/tests/extras");
_PPCLRPNode_Init(pass,__pRT__,snd);
_PPCLRPParser_Init(pass,__pRT__,snd);
+_PPCLRPParserSmokeTest_Init(pass,__pRT__,snd);
+_PPCLRPSourcesResource_Init(pass,__pRT__,snd);
_PPCLRPAction_Init(pass,__pRT__,snd);
+_PPCLRPCompiledParserSmokeTest_Init(pass,__pRT__,snd);
_PPCLRPContainedElement_Init(pass,__pRT__,snd);
_PPCLRPSpawn_Init(pass,__pRT__,snd);
_PPCLRPComment_Init(pass,__pRT__,snd);
+_PPCLRPCompiledParserSmokeTest_137Tokenized_Init(pass,__pRT__,snd);
+_PPCLRPCompiledParserSmokeTest_137Universal_Init(pass,__pRT__,snd);
+_PPCLRPErrorNode_Init(pass,__pRT__,snd);
_PPCLRPEvent_Init(pass,__pRT__,snd);
_PPCLRPMachine_Init(pass,__pRT__,snd);
_PPCLRPOnEntry_Init(pass,__pRT__,snd);
--- a/compiler/tests/extras/stx_goodies_petitparser_compiler_tests_extras.st Thu Jul 30 17:31:18 2015 +0100
+++ b/compiler/tests/extras/stx_goodies_petitparser_compiler_tests_extras.st Fri Jul 31 07:57:23 2015 +0100
@@ -84,7 +84,11 @@
^ #(
#'stx:goodies/petitparser' "PPCompositeParser - superclass of PPCLRPParser"
- #'stx:libbasic' "Autoload - superclass of PPCAbstractParserTest"
+ #'stx:goodies/petitparser/parsers/java' "PPJavaLexiconTest - superclass of PPCompiledJavaSyntaxTest"
+ #'stx:goodies/petitparser/parsers/smalltalk/tests' "PPSmalltalkGrammarTests - superclass of PPCSmalltalkGrammarTests"
+ #'stx:goodies/petitparser/tests' "PPAbstractParserTest - superclass of PPCAbstractParserTest"
+ #'stx:goodies/sunit' "TestAsserter - superclass of PPCAbstractParserTest"
+ #'stx:libbasic' "LibraryDefinition - superclass of stx_goodies_petitparser_compiler_tests_extras"
)
!
@@ -99,8 +103,9 @@
by searching all classes (and their packages) which are referenced by my classes."
^ #(
- #'stx:goodies/petitparser/parsers/smalltalk' "PPSmalltalkParser - referenced by PPCLRPParser>>block"
- #'stx:goodies/sunit' "TestCase - referenced by stx_goodies_petitparser_compiler_tests_extras class>>additionalClassAttributesFor:"
+ #'stx:goodies/petitparser/compiler' "PPCArguments - referenced by PPCSmalltalkTests>>setUp"
+ #'stx:goodies/petitparser/parsers/smalltalk' "PPSmalltalkGrammar - referenced by PPCSmalltalkGrammarTests>>petitParserClass"
+ #'stx:libbasic2' "Random - referenced by PPCResources>>expressionOfSize:stream:"
)
!
@@ -124,13 +129,46 @@
^ #(
"<className> or (<className> attributes...) in load order"
+ (PPCAbstractParserTest autoload)
+ (PPCCompiledJavaVerificationTest autoload)
+ (PPCCompositeParserTest autoload)
PPCLRPNode
PPCLRPParser
+ PPCLRPParserSmokeTest
+ PPCLRPSourcesResource
+ (PPCResources autoload)
+ (PPCSetUpBeforeTearDownAfterResource autoload)
+ (PPCSmalltalkGrammarTests autoload)
+ (PPCSmalltalkParserTests autoload)
+ (PPCSmalltalkTests autoload)
+ (PPCompiledJavaResource autoload)
+ (PPCompiledJavaSyntaxTest autoload)
+ (PPExpressionGrammar autoload)
+ (PPExpressionGrammarTest autoload)
+ (PPLL1ExpressionGrammar autoload)
+ (PPLL1ExpressionGrammarTest autoload)
(#'stx_goodies_petitparser_compiler_tests_extras' autoload)
+ (PPCExpressionGrammarTest autoload)
+ (PPCExpressionGrammarVerificationTest autoload)
+ (PPCLL1ExpressionGrammarTest autoload)
PPCLRPAction
+ PPCLRPCompiledParserSmokeTest
PPCLRPContainedElement
PPCLRPSpawn
+ (#'PPCSmalltalkGrammarTests_Tokenized' autoload)
+ (#'PPCSmalltalkGrammarTests_Universal' autoload)
+ (PPCSmalltalkGrammarVerificationTest autoload)
+ (#'PPCSmalltalkParserTests_Tokenized' autoload)
+ (#'PPCSmalltalkParserTests_Universal' autoload)
+ (PPCSmalltalkParserVerificationTest autoload)
+ (#'PPCExpressionGrammarTest_Tokenized' autoload)
+ (#'PPCExpressionGrammarTest_Universal' autoload)
+ (#'PPCLL1ExpressionGrammarTest_Tokenized' autoload)
+ (#'PPCLL1ExpressionGrammarTest_Universal' autoload)
PPCLRPComment
+ #'PPCLRPCompiledParserSmokeTest_Tokenized'
+ #'PPCLRPCompiledParserSmokeTest_Universal'
+ PPCLRPErrorNode
PPCLRPEvent
PPCLRPMachine
PPCLRPOnEntry
@@ -139,42 +177,15 @@
PPCLRPState
PPCLRPTransition
PPCLRPVariable
+ (#'PPCSmalltalkGrammarVerificationTest_Tokenized' autoload)
+ (#'PPCSmalltalkGrammarVerificationTest_Universal' autoload)
+ (#'PPCSmalltalkParserVerificationTest_Tokenized' autoload)
+ (#'PPCSmalltalkParserVerificationTest_Universal' autoload)
+ (#'PPExpressionGrammarVerificationTest_Tokenized' autoload)
+ (#'PPExpressionGrammarVerificationTest_Universal' autoload)
PPCLRPEpsilonTransition
PPCLRPTimeoutTransition
PPCLRPWildcardTransition
- (PPCAbstractParserTest autoload)
- (PPCCompiledJavaVerificationTest autoload)
- (PPCCompositeParserTest autoload)
- (PPCExpressionGrammarTest autoload)
- (#'PPCExpressionGrammarTest_Tokenized' autoload)
- (#'PPCExpressionGrammarTest_Universal' autoload)
- (PPCExpressionGrammarVerificationTest autoload)
- (PPCLL1ExpressionGrammarTest autoload)
- (#'PPCLL1ExpressionGrammarTest_Tokenized' autoload)
- (#'PPCLL1ExpressionGrammarTest_Universal' autoload)
- (PPCResources autoload)
- (PPCSetUpBeforeTearDownAfterResource autoload)
- (PPCSmalltalkGrammarTests autoload)
- (#'PPCSmalltalkGrammarTests_Tokenized' autoload)
- (#'PPCSmalltalkGrammarTests_Universal' autoload)
- (PPCSmalltalkGrammarVerificationTest autoload)
- (#'PPCSmalltalkGrammarVerificationTest_Tokenized' autoload)
- (#'PPCSmalltalkGrammarVerificationTest_Universal' autoload)
- (PPCSmalltalkParserTests autoload)
- (#'PPCSmalltalkParserTests_Tokenized' autoload)
- (#'PPCSmalltalkParserTests_Universal' autoload)
- (PPCSmalltalkParserVerificationTest autoload)
- (#'PPCSmalltalkParserVerificationTest_Tokenized' autoload)
- (#'PPCSmalltalkParserVerificationTest_Universal' autoload)
- (PPCSmalltalkTests autoload)
- (PPCompiledJavaResource autoload)
- (PPCompiledJavaSyntaxTest autoload)
- (PPExpressionGrammar autoload)
- (PPExpressionGrammarTest autoload)
- (#'PPExpressionGrammarVerificationTest_Tokenized' autoload)
- (#'PPExpressionGrammarVerificationTest_Universal' autoload)
- (PPLL1ExpressionGrammar autoload)
- (PPLL1ExpressionGrammarTest autoload)
)
!