stx_goodies_petitparser.st
changeset 5 804a351a9415
child 8 9bb6c46efe0f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/stx_goodies_petitparser.st	Fri Jan 13 12:24:08 2012 +0100
@@ -0,0 +1,206 @@
+"{ Package: 'stx:goodies/petitparser' }"
+
+LibraryDefinition subclass:#stx_goodies_petitparser
+	instanceVariableNames:''
+	classVariableNames:''
+	poolDictionaries:''
+	category:'* Projects & Packages *'
+!
+
+
+!stx_goodies_petitparser class methodsFor:'accessing'!
+
+monticelloPackageName
+    "hook for packages which have been loaded from monticello"
+
+    ^ 'PetitParser'
+
+    "Created: / 17-12-2010 / 19:44:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!stx_goodies_petitparser class methodsFor:'description'!
+
+excludedFromPreRequisites
+    "list all packages which should be ignored in the automatic
+     preRequisites scan. See #preRequisites for more."
+
+    ^ #(
+    )
+!
+
+preRequisites
+    "list all required packages.
+     This list can be maintained manually or (better) generated and
+     updated by scanning the superclass hierarchies and looking for
+     global variable accesses. (the browser has a menu function for that)
+     Howevery, often too much is found, and you may want to explicitely
+     exclude individual packages in the #excludedFromPrerequisites method."
+
+    ^ #(
+	#'stx:goodies/sunit'    "TestCase - superclass of PPTokenTest "
+	#'stx:libbasic'    "Object - superclass of PPFailure "
+	#'stx:libbasic2'    "Text"
+    )
+! !
+
+!stx_goodies_petitparser class methodsFor:'description - actions'!
+
+postLoadAction
+
+    self classes do: [:cls|cls isLoaded ifFalse:[cls autoload]]
+
+    "Created: / 17-12-2010 / 19:55:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!stx_goodies_petitparser class methodsFor:'description - contents'!
+
+classNamesAndAttributes
+    "lists the classes which are to be included in the project.
+     Each entry in the list may be: a single class-name (symbol),
+     or an array-literal consisting of class name and attributes.
+     Attributes are: #autoload or #<os> where os is one of win32, unix,..."
+
+    ^ #(
+	"<className> or (<className> attributes...) in load order"
+	(PPAbstractParseTest autoload)
+	PPCharSetPredicate
+	PPFailure
+	PPMemento
+	PPParser
+	(PPParserResource autoload)
+	PPStream
+	PPToken
+	#'stx_goodies_petitparser'
+	(PPComposedTest autoload)
+	(PPCompositeParserTest autoload)
+	PPDelegateParser
+	PPEpsilonParser
+	(PPExtensionTest autoload)
+	PPFailingParser
+	PPListParser
+	PPLiteralParser
+	(PPMappingTest autoload)
+	(PPObjectTest autoload)
+	(PPParserTest autoload)
+	PPPluggableParser
+	PPPredicateParser
+	(PPPredicateTest autoload)
+	(PPScriptingTest autoload)
+	(PPTokenTest autoload)
+	PPUnresolvedParser
+	PPActionParser
+	PPAndParser
+	(PPArithmeticParserTest autoload)
+	PPChoiceParser
+	PPCompositeParser
+	PPEndOfInputParser
+	PPExpressionParser
+	PPFlattenParser
+	(PPLambdaParserTest autoload)
+	PPLiteralObjectParser
+	PPLiteralSequenceParser
+	PPMemoizedParser
+	PPNotParser
+	PPOptionalParser
+	PPPredicateObjectParser
+	PPPredicateSequenceParser
+	PPRepeatingParser
+	PPSequenceParser
+	PPTrimmingParser
+	PPArithmeticParser
+	(PPExpressionParserTest autoload)
+	PPLambdaParser
+	PPTokenParser
+	PPWrappingParser
+    )
+!
+
+extensionMethodNames
+    "lists the extension methods which are to be included in the project.
+     Entries are 2-element array literals, consisting of class-name and selector."
+
+    ^ #(
+	Block asParser
+	BlockContext asParser
+	Character #'-'
+	Character asParser
+	Character ppMinus:
+	Object asParser
+	Object isPetitFailure
+	Object isPetitParser
+	PositionableStream asPetitStream
+	SequenceableCollection asParser
+	SequenceableCollection asPetitStream
+	Set asParser
+	Stream asPetitStream
+	String asParser
+	Symbol asParser
+	Symbol value:
+	Text asPetitStream
+	UndefinedObject asParser
+    )
+! !
+
+!stx_goodies_petitparser class methodsFor:'description - project information'!
+
+applicationIconFileName
+    "Return the name (without suffix) of an icon-file (the app's icon); will be included in the rc-resource file"
+
+    ^ nil
+    "/ ^ self applicationName
+!
+
+companyName
+    "Return a companyname which will appear in <lib>.rc"
+
+    ^ 'Lukas Renggli & SWING Research Group'
+
+    "Modified: / 17-12-2010 / 19:43:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+description
+    "Return a description string which will appear in vc.def / bc.def"
+
+    ^ 'Scanner-less parser & parser combinator library'
+
+    "Modified: / 17-12-2010 / 19:43:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+legalCopyright
+    "Return a copyright string which will appear in <lib>.rc"
+
+    ^ '(C) Lukas Renggli'
+
+    "Modified: / 17-12-2010 / 19:43:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+!
+
+productName
+    "Return a product name which will appear in <lib>.rc"
+
+    ^ 'Petit Parser'
+
+    "Modified: / 17-12-2010 / 19:43:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+
+!stx_goodies_petitparser class methodsFor:'description - svn'!
+
+svnRevisionNr
+    "Return a SVN revision number of myself.
+     This number is updated after a commit"
+
+    ^ "$SVN-Revision:"'5M'"$"
+! !
+
+!stx_goodies_petitparser class methodsFor:'documentation'!
+
+version
+    ^ '$Header: /cvs/stx/stx/goodies/petitparser/stx_goodies_petitparser.st,v 1.1 2012-01-13 11:24:08 cg Exp $'
+!
+
+version_CVS
+    ^ '$Header: /cvs/stx/stx/goodies/petitparser/stx_goodies_petitparser.st,v 1.1 2012-01-13 11:24:08 cg Exp $'
+!
+
+version_SVN
+    ^ '§Id: stx_goodies_petitparser.st,v 1.1 2011/08/18 18:56:17 cg Exp §'
+! !