diff -r 20598d7ce9fa -r 9f4558b3be66 compiler/PPCArguments.st --- a/compiler/PPCArguments.st Thu Apr 30 23:43:14 2015 +0200 +++ b/compiler/PPCArguments.st Sun May 10 06:28:36 2015 +0100 @@ -12,99 +12,135 @@ !PPCArguments class methodsFor:'as yet unclassified'! default - ^ self new + ^ self new ! new - ^ self basicNew - initialize; - yourself + ^ self basicNew + initialize; + yourself ! ! !PPCArguments methodsFor:'accessing'! +cacheFirstFollow + ^ self at: #cacheFirstFollow ifAbsent: true +! + +cacheFirstFollow: value + self set: #cacheFirstFollow to: value. +! + +codeGenerator + ^ self at: #codeGenerator ifAbsent: PPCCodeGenerator +! + +codeGenerator: value + self set: #codeGenerator to: value. +! + debug - ^ self at: #debug ifAbsent: true + ^ self at: #debug ifAbsent: true ! debug: value - self set: #debug to: value. + self set: #debug to: value. +! + +detectTokens + ^ self at: #detectTokens ifAbsent: true +! + +detectTokens: value + self set: #detectTokens to: value. ! generate - ^ self at: #generate ifAbsent: true + ^ self at: #generate ifAbsent: true +! + +generate: value + ^ self set: #generate to: value ! guards - ^ self at: #guards ifAbsent: true + ^ self at: #guards ifAbsent: true ! guards: value - self set: #guards to: value. + self set: #guards to: value. ! inline - ^ self at: #inline ifAbsent: true + ^ self at: #inline ifAbsent: true ! inline: value - self set: #inline to: value. + self set: #inline to: value. ! merge - ^ self at: #merge ifAbsent: true + ^ self at: #merge ifAbsent: true ! merge: value - self set: #merge to: value. + self set: #merge to: value. ! name - ^ self at: #name ifAbsent: #PPGeneratedParser + ^ self at: #name ifAbsent: #PPGeneratedParser ! name: value - self set: #name to: value. + self set: #name to: value. ! profile - ^ self at: #profile ifAbsent: false + ^ self at: #profile ifAbsent: false ! profile: value - self set: #profile to: value. + self set: #profile to: value. +! + +recognizingComponents + ^ self at: #recognizingComponents ifAbsent: true +! + +recognizingComponents: value + self set: #recognizingComponents to: value. ! specialize - ^ self at: #specialize ifAbsent: true + ^ self at: #specialize ifAbsent: true ! specialize: value - self set: #specialize to: value. + self set: #specialize to: value. ! tokenize - ^ self at: #tokenize ifAbsent: true + ^ self at: #tokenize ifAbsent: true ! tokenize: value - self set: #tokenize to: value. + self set: #tokenize to: value. ! ! !PPCArguments methodsFor:'initialization'! initialize - super initialize. - arguments := IdentityDictionary new + super initialize. + arguments := IdentityDictionary new ! ! !PPCArguments methodsFor:'private'! at: symbol ifAbsent: defaultValue - ^ arguments at: symbol ifAbsent: [ ^ defaultValue ] + ^ arguments at: symbol ifAbsent: [ ^ defaultValue ] ! set: symbol to: defaultValue - ^ arguments at: symbol put: defaultValue + ^ arguments at: symbol put: defaultValue ! !