jv_cface.st
changeset 32 d7464405cbda
parent 24 e7afa531abcf
child 33 f87d54770abe
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jv_cface.st	Tue Sep 23 16:52:40 2014 +0100
@@ -0,0 +1,158 @@
+"{ Package: 'jv:cface' }"
+
+LibraryDefinition subclass:#jv_cface
+	instanceVariableNames:''
+	classVariableNames:''
+	poolDictionaries:''
+	category:'* Projects & Packages *'
+!
+
+
+!jv_cface class methodsFor:'description'!
+
+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/smaCC'    "SmaCC::SmaCCScanner - superclass of Cface::CDefinitionScanner "
+        #'stx:libbasic'    "Object - superclass of Cface::CDerivedTypeNode "
+        #'stx:libbasic3'    "Change - superclass of extended ClassChange "
+    )
+! !
+
+!jv_cface 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"
+        #'Cface::CDefinitionParser'
+        #'Cface::CDefinitionScanner'
+        #'Cface::CNode'
+        #'Cface::CNodeVisitor'
+        #'Cface::GeneratorCommand'
+        #'Cface::Platform'
+        #'Cface::TypeMapping'
+        #'jv_cface'
+        #'Cface::CDefinitionNode'
+        #'Cface::CModifierNode'
+        #'Cface::CNoNode'
+        #'Cface::CairoMapping'
+        #'Cface::GTKMapping'
+        #'Cface::Generator'
+        #'Cface::SVNMapping'
+        #'Cface::SmalltalkX'
+        #'Cface::TypeCollector'
+        #'Cface::TypeMapper'
+        #'Cface::TypeResolver'
+        #'Cface::CArgumentNode'
+        #'Cface::CConstNode'
+        #'Cface::CDefinitionFileNode'
+        #'Cface::CEnumValueNode'
+        #'Cface::CFunctionNode'
+        #'Cface::CLongNode'
+        #'Cface::CShortNode'
+        #'Cface::CStructFieldNode'
+        #'Cface::CTypeNode'
+        #'Cface::CUnsignedNode'
+        #'Cface::SmalltalkXGenerator'
+        #'Cface::CArrayNode'
+        #'Cface::CBuiltinNode'
+        #'Cface::CDerivedTypeNode'
+        #'Cface::CPointerNode'
+        #'Cface::CTypedefNode'
+        #'Cface::CUserDefinedTypeNode'
+        #'Cface::CCharNode'
+        #'Cface::CDoubleNode'
+        #'Cface::CEnumNode'
+        #'Cface::CFloatNode'
+        #'Cface::CFunctionTypeNode'
+        #'Cface::CIntNode'
+        #'Cface::CStructuredNode'
+        #'Cface::CVoidNode'
+        #'Cface::CWCharNode'
+        #'Cface::CStructNode'
+        #'Cface::CUnionNode'
+        #'Cface::Libgit2Mapping'
+    )
+!
+
+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."
+
+    ^ #(
+        ClassDefinitionChange nameSpaceName:
+        Stream tab4
+    )
+! !
+
+!jv_cface class methodsFor:'description - project information'!
+
+companyName
+    "Return a companyname which will appear in <lib>.rc"
+
+    ^ 'CVUT FEL'
+
+    "Created: / 08-09-2008 / 23:49:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+description
+    "Return a description string which will appear in vc.def / bc.def"
+
+    ^ 'Cairo graphics binding'
+
+    "Created: / 08-09-2008 / 23:49:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+legalCopyright
+    "Return a copyright string which will appear in <lib>.rc"
+
+    ^ 'Copyright 2008 Jan Vrany'
+
+    "Created: / 08-09-2008 / 23:49:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+!
+
+productName
+    "Return a product name which will appear in <lib>.rc"
+
+    ^ 'CairoGraphics'
+
+    "Created: / 08-09-2008 / 23:49:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
+! !
+
+!jv_cface class methodsFor:'description - svn'!
+
+svnRepositoryUrlString
+    "Return a SVN repository URL of myself.
+     (Generated since 2011-04-08)
+    "        
+
+    ^ '$URL$'
+!
+
+svnRevisionNr
+    "Return a SVN revision number of myself.
+     This number is updated after a commit"
+
+    ^ "$SVN-Revision:"'17'"$"
+! !
+
+!jv_cface class methodsFor:'documentation'!
+
+version
+    ^'$Id$'
+!
+
+version_SVN
+    ^ '$Id$'
+! !