"
COPYRIGHT (c) 2006 by eXept Software AG
All Rights Reserved
This software is furnished under a license and may be used
only in accordance with the terms of that license and with the
inclusion of the above copyright notice. This software may not
be provided or otherwise made available to, or used by, any
other person. No title to or ownership of the software is
hereby transferred.
"
"{ Package: 'stx:libcomp' }"
"{ NameSpace: Smalltalk }"
LibraryDefinition subclass:#stx_libcomp
instanceVariableNames:''
classVariableNames:''
poolDictionaries:''
category:'* Projects & Packages *'
!
!stx_libcomp class methodsFor:'documentation'!
copyright
"
COPYRIGHT (c) 2006 by eXept Software AG
All Rights Reserved
This software is furnished under a license and may be used
only in accordance with the terms of that license and with the
inclusion of the above copyright notice. This software may not
be provided or otherwise made available to, or used by, any
other person. No title to or ownership of the software is
hereby transferred.
"
!
documentation
"
Package documentation:
This library contains the Smalltalk parser and bytecode compiler,
and related support classes (AST representation).
This compiler is used when code is changed within the running IDE or application.
It generates bytecode methods, which are further translated to machine code by the VM,
when first executed.
This is not to be confused with the stc-compiler, which generates plain machine code, which
is packaged in compiled class libraries. Usually, end user applications are deployed as
stc-compiled binary code. And only patches or dynamically generated code uses bytecode methods.
"
! !
!stx_libcomp class methodsFor:'description'!
excludedFromPreRequisites
^ #(
#'exept:ctypes'
#'stx:libbasic2' "Text - referenced by Parser>>selectorCheck:for:positions: "
#'stx:libtool' "Tools::ToDoListBrowser - referenced by Parser>>selectorCheck:for:positions: "
#'stx:libview' "Color - referenced by SyntaxHighlighter>>markParenthesisAt: "
#'stx:libview2' "ValueHolder - referenced by Parser>>addDoItTemporary: "
#'stx:libwidg' "Workspace - referenced by Parser>>primary_identifier "
#'stx:libwidg2' "TextBox - referenced by WarningCompilationErrorHandler>>error:position:to:from: "
#'stx:goodies/sunit'
)
"Modified: / 16-06-2011 / 15:33:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!
mandatoryPreRequisites
"list all required mandatory packages.
Packages are mandatory, if they contain superclasses of the package's classes
or classes which are extended by this package.
This list can be maintained manually or (better) generated and
updated by scanning the superclass hierarchies
(the browser has a menu function for that)
However, often too much is found, and you may want to explicitely
exclude individual packages in the #excludedFromPreRequisites method."
^ #(
#'stx:libbasic' "Query - superclass of Parser::AskForVariableTypeOfUndeclaredQuery "
)
!
referencedPreRequisites
"list all packages containing classes referenced by the packages's members.
This list can be maintained manually or (better) generated and
updated by looking for global variable accesses
(the browser has a menu function for that)
However, often too much is found, and you may want to explicitely
exclude individual packages in the #excludedFromPreRequisites method."
^ #(
)
! !
!stx_libcomp class methodsFor:'description - compilation'!
additionalBaseAddressDefinition_bc_dot_mak
"this is an optional definition, which (if present) may speed up the dll-loading a little
on win32 systems."
^ '
# see stdHeader_bc for LIBCOMP_BASE
LIB_BASE=$(LIBCOMP_BASE)
'
!
stcOptimizationOptions
^ '+optinline +optinline2 +inlinenew'
"Created: / 23-08-2006 / 11:27:31 / cg"
!
stcWarningOptions
^ '-warnNonStandard -warnUnused'
! !
!stx_libcomp 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"
Breakpoint
BreakpointDescription
BreakpointQuery
CompilationErrorHandler
CompilationErrorHandlerQuery
DoNotShowCompilerWarningAgainActionQuery
DoNotShowCompilerWarningAgainForThisMethodActionQuery
DoNotShowCompilerWarningAgainForThisReceiverSelectorActionQuery
InstrumentationContext
InstrumentationInfo
InstrumentedMethod
LazyMethod
ObjectFileHandle
ObjectFileLoader
ParseError
ParseNode
(ParseNodeVisitor autoload)
ParseWarning
ParserFlags
ProgramNodeBuilder
ProgramNodeEnumerator
STCCompilerInterface
Scanner
SourceFileLoader
Structure
(Switch autoload)
UndefinedVariable
UndefinedVariableNotification
Variable
#'stx_libcomp'
AssignmentNode
BlockNode
BreakpointNode
CompilationError
EvalScriptingErrorHandler
MessageNode
MethodNode
ParseErrorNode
(ParseNodeValidator autoload)
Parser
(PluggableParseNodeVisitor autoload)
PrimaryNode
ProgramNode
SelectorNode
StatementNode
TextCollectingCompilationErrorHandler
UndefinedSuperclassError
UndefinedVariableError
WarningCompilationErrorHandler
AbstractSyntaxHighlighter
BinaryNode
BreakpointAnalyzer
ByteCodeCompiler
CascadeNode
ConstantNode
Explainer
PrimitiveNode
ReturnNode
SelfNode
UnaryNode
VariableNode
ByteCodeCompilerWithBreakpointSupport
CodeCoverageHighlighter
Decompiler
ECompletionConstantNode
InstrumentingCompiler
SuperNode
SyntaxHighlighter
)
!
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."
^ #(
Object notifyTodo:position:className:selector:severity:priority:equalityParameter:checkAction:
)
!
xclassNamesAndAttributes
"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"
Breakpoint
CompilationErrorHandler
DoNotShowCompilerWarningAgainActionQuery
InstrumentedMethod
LazyMethod
ObjectFileHandle
ObjectFileLoader
ParseNode
ParserFlags
ProgramNodeBuilder
ProgramNodeEnumerator
STCCompilerInterface
Scanner
SourceFileLoader
Structure
Switch
UndefinedVariable
Variable
#'stx_libcomp'
AssignmentNode
BlockNode
BreakpointNode
MessageNode
Parser
PrimaryNode
ProgramNode
StatementNode
TextCollectingCompilationErrorHandler
WarningCompilationErrorHandler
AbstractSyntaxHighlighter
BinaryNode
ByteCodeCompiler
CascadeNode
ConstantNode
Explainer
ParseErrorNode
PrimitiveNode
ReturnNode
SelfNode
UnaryNode
VariableNode
ByteCodeCompilerWithBreakpointSupport
CodeCoverageHighlighter
Decompiler
ECompletionConstantNode
InstrumentationInfo
InstrumentationContext
InstrumentingCompiler
SuperNode
SyntaxHighlighter
BreakpointDescription
(ParseNodeValidator autoload)
(ParseNodeVisitor autoload)
(MethodNode autoload)
)
"Created: / 06-12-2011 / 21:14:23 / cg"
! !
!stx_libcomp class methodsFor:'description - project information'!
companyName
"Return a companyname which will appear in <lib>.rc"
^ 'eXept Software AG'
!
description
"Return a description string which will appear in nt.def / bc.def"
^ 'Smalltalk/X Bytecode Compiler'
!
legalCopyright
"Return copyright string which will appear in <lib>.rc"
^ 'Copyright Claus Gittinger 1988-2012\nCopyright eXept Software AG 2012'
"Modified: / 18-07-2012 / 19:11:33 / cg"
!
productName
"Return a product name which will appear in <lib>.rc"
^ 'Smalltalk/X'
! !
!stx_libcomp 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:"'exportiert'"$"
! !
!stx_libcomp class methodsFor:'documentation'!
version
^ '$Header$'
!
version_CVS
^ '$Header$'
!
version_SVN
^ '$ Id $'
! !