author | Jan Vrany <jan.vrany@fit.cvut.cz> |
Tue, 24 Sep 2013 23:18:24 +0200 | |
branch | initialV |
changeset 1180 | 01c6be61f29c |
parent 699 | 3d7d48f8b145 |
child 723 | f319d3caa621 |
permissions | -rw-r--r-- |
342 | 1 |
" |
2 |
COPYRIGHT (c) 2006 by eXept Software AG |
|
3 |
All Rights Reserved |
|
4 |
||
5 |
This software is furnished under a license and may be used |
|
6 |
only in accordance with the terms of that license and with the |
|
7 |
inclusion of the above copyright notice. This software may not |
|
8 |
be provided or otherwise made available to, or used by, any |
|
9 |
other person. No title to or ownership of the software is |
|
10 |
hereby transferred. |
|
11 |
" |
|
217 | 12 |
"{ Package: 'stx:libjavascript' }" |
13 |
||
14 |
LibraryDefinition subclass:#stx_libjavascript |
|
15 |
instanceVariableNames:'' |
|
16 |
classVariableNames:'' |
|
17 |
poolDictionaries:'' |
|
249 | 18 |
category:'* Projects & Packages *' |
217 | 19 |
! |
20 |
||
342 | 21 |
!stx_libjavascript class methodsFor:'documentation'! |
22 |
||
23 |
copyright |
|
24 |
" |
|
25 |
COPYRIGHT (c) 2006 by eXept Software AG |
|
26 |
All Rights Reserved |
|
27 |
||
28 |
This software is furnished under a license and may be used |
|
29 |
only in accordance with the terms of that license and with the |
|
30 |
inclusion of the above copyright notice. This software may not |
|
31 |
be provided or otherwise made available to, or used by, any |
|
32 |
other person. No title to or ownership of the software is |
|
33 |
hereby transferred. |
|
34 |
" |
|
35 |
! |
|
36 |
||
37 |
documentation |
|
38 |
" |
|
558 | 39 |
Build- and package information for creation of the st/x standard library: stx_libjavascript. |
342 | 40 |
This library contains a JavaSript Parser/Compiler, generating smalltalk bytecode. |
41 |
" |
|
42 |
! ! |
|
217 | 43 |
|
329 | 44 |
!stx_libjavascript class methodsFor:'description'! |
45 |
||
46 |
excludedFromPreRequisites |
|
432 | 47 |
"list all packages which should be ignored in the automatic |
48 |
preRequisites scan. See #preRequisites for more." |
|
49 |
||
329 | 50 |
^ #( |
51 |
#'stx:libbasic2' "Random - referenced by Math class>>randomInteger:_: " |
|
52 |
#'stx:libview' "Color - referenced by JavaScriptSyntaxHighlighter>>markSelector:from:to:receiverNode:numArgs: " |
|
53 |
) |
|
54 |
! |
|
55 |
||
578
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
56 |
mandatoryPreRequisites |
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
57 |
"list all required mandatory packages. |
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
58 |
Packages are mandatory, if they contain superclasses of the package's classes |
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
59 |
or classes which are extended by this package. |
432 | 60 |
This list can be maintained manually or (better) generated and |
578
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
61 |
updated by scanning the superclass hierarchies |
651
ccc0b00a9f48
Added JavaScriptParseNodeVisitor
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
632
diff
changeset
|
62 |
(the browser has a menu function for that)" |
432 | 63 |
|
329 | 64 |
^ #( |
651
ccc0b00a9f48
Added JavaScriptParseNodeVisitor
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
632
diff
changeset
|
65 |
#'stx:libbasic' "AbstractSourceFileWriter - superclass of JavaScriptSourceFileWriter " |
577 | 66 |
#'stx:libbasic3' "HTMLDocGenerator - superclass of HTMLDocGeneratorForJavaScript " |
651
ccc0b00a9f48
Added JavaScriptParseNodeVisitor
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
632
diff
changeset
|
67 |
#'stx:libcomp' "AssignmentNode - superclass of JavaScriptParser::JavaScriptAssignmentNode " |
699
3d7d48f8b145
Added JavaScriptCompletionEngine/Parser
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
674
diff
changeset
|
68 |
#'stx:libtool' "CodeGeneratorTool - superclass of JavaScriptCodeGeneratorTool " |
578
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
69 |
) |
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
70 |
! |
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
71 |
|
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
72 |
referencedPreRequisites |
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
73 |
"list all packages containing classes referenced by the packages's members. |
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
74 |
This list can be maintained manually or (better) generated and |
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
75 |
updated by looking for global variable accesses |
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
76 |
(the browser has a menu function for that) |
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
77 |
However, often too much is found, and you may want to explicitely |
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
78 |
exclude individual packages in the #excludedFromPreRequisites method." |
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
79 |
|
c1ddcb0b55b1
Now preRequiites are separated in mandatoryPreRequisites and referencedPreRequisites
Stefan Vogel <sv@exept.de>
parents:
577
diff
changeset
|
80 |
^ #( |
699
3d7d48f8b145
Added JavaScriptCompletionEngine/Parser
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
674
diff
changeset
|
81 |
#'stx:goodies/refactoryBrowser/parser' "ParseTreeSearcher - referenced by JavaScriptCodeGeneratorTool>>codeFor_shouldImplementFor:inClass: " |
3d7d48f8b145
Added JavaScriptCompletionEngine/Parser
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
674
diff
changeset
|
82 |
#'stx:goodies/webServer' "HTTPService - referenced by JavaScriptCodeGeneratorTool>>createDocumentationMethodFor: " |
3d7d48f8b145
Added JavaScriptCompletionEngine/Parser
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
674
diff
changeset
|
83 |
#'stx:libview2' "ApplicationModel - referenced by JavaScriptCodeGeneratorTool>>anyApplicationClassInProjectOf: " |
329 | 84 |
) |
651
ccc0b00a9f48
Added JavaScriptParseNodeVisitor
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
632
diff
changeset
|
85 |
! |
ccc0b00a9f48
Added JavaScriptParseNodeVisitor
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
632
diff
changeset
|
86 |
|
ccc0b00a9f48
Added JavaScriptParseNodeVisitor
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
632
diff
changeset
|
87 |
subProjects |
ccc0b00a9f48
Added JavaScriptParseNodeVisitor
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
632
diff
changeset
|
88 |
"list packages which are known as subprojects. |
ccc0b00a9f48
Added JavaScriptParseNodeVisitor
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
632
diff
changeset
|
89 |
The generated makefile will enter those and make there as well. |
ccc0b00a9f48
Added JavaScriptParseNodeVisitor
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
632
diff
changeset
|
90 |
However: they are not forced to be loaded when a package is loaded; |
ccc0b00a9f48
Added JavaScriptParseNodeVisitor
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
632
diff
changeset
|
91 |
for those, redefine requiredPrerequisites" |
ccc0b00a9f48
Added JavaScriptParseNodeVisitor
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
632
diff
changeset
|
92 |
|
ccc0b00a9f48
Added JavaScriptParseNodeVisitor
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
632
diff
changeset
|
93 |
^ #( |
ccc0b00a9f48
Added JavaScriptParseNodeVisitor
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
632
diff
changeset
|
94 |
) |
329 | 95 |
! ! |
96 |
||
226 | 97 |
!stx_libjavascript class methodsFor:'description - compilation'! |
98 |
||
99 |
additionalDefinitions_nt_dot_mak |
|
100 |
^ ' |
|
101 |
# see stdHeader_nt for LIBJAVASCRIPT_BASE |
|
102 |
LIB_BASE_LD_ARG=-b:$(LIBJAVASCRIPT_BASE) |
|
103 |
' |
|
104 |
! ! |
|
105 |
||
217 | 106 |
!stx_libjavascript class methodsFor:'description - contents'! |
107 |
||
108 |
classNamesAndAttributes |
|
432 | 109 |
"lists the classes which are to be included in the project. |
110 |
Each entry in the list may be: a single class-name (symbol), |
|
111 |
or an array-literal consisting of class name and attributes. |
|
112 |
Attributes are: #autoload or #<os> where os is one of win32, unix,..." |
|
113 |
||
217 | 114 |
^ #( |
259 | 115 |
"<className> or (<className> attributes...) in load order" |
116 |
HTMLDocGeneratorForJavaScript |
|
329 | 117 |
JavaScriptClass |
118 |
JavaScriptClassNode |
|
561 | 119 |
(JavaScriptCodeGeneratorTool autoload) |
329 | 120 |
JavaScriptEnvironment |
121 |
JavaScriptFunction |
|
122 |
JavaScriptFunctionNode |
|
123 |
JavaScriptMetaclass |
|
487 | 124 |
JavaScriptObject |
329 | 125 |
JavaScriptScanner |
126 |
JavaScriptSourceFileWriter |
|
127 |
JavaScriptSourceReader |
|
128 |
JavaScriptVariable |
|
129 |
JavaScriptVariableNode |
|
304 | 130 |
Math |
487 | 131 |
STXJavaScriptLanguage |
329 | 132 |
#'stx_libjavascript' |
133 |
JavaScriptInnerFunctionNode |
|
134 |
JavaScriptParser |
|
135 |
JavaScriptCompiler |
|
136 |
JavaScriptSyntaxHighlighter |
|
619 | 137 |
JavaScriptCompilerWithBreakpointSupport |
632 | 138 |
JavaScriptFunctionWithBreakpoints |
667 | 139 |
(JavaScriptParseNodeVisitor autoload) |
674 | 140 |
(JavaScriptParseNodeValidator autoload) |
699
3d7d48f8b145
Added JavaScriptCompletionEngine/Parser
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
674
diff
changeset
|
141 |
JavaScriptCompletionEngine |
3d7d48f8b145
Added JavaScriptCompletionEngine/Parser
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
674
diff
changeset
|
142 |
JavaScriptCompletionParser |
217 | 143 |
) |
144 |
! |
|
145 |
||
146 |
extensionMethodNames |
|
432 | 147 |
"lists the extension methods which are to be included in the project. |
148 |
Entries are 2-element array literals, consisting of class-name and selector." |
|
149 |
||
217 | 150 |
^ #( |
329 | 151 |
AbstractTime getDate |
152 |
AbstractTime getDay |
|
153 |
AbstractTime getFullYear |
|
154 |
AbstractTime getHours |
|
155 |
AbstractTime getMinutes |
|
156 |
AbstractTime getMonth |
|
561 | 157 |
AbstractTime #'js_add:' |
158 |
AbstractTime #'js_addFromTime:' |
|
329 | 159 |
AbstractTime #'js_getMilliseconds' |
160 |
AbstractTime #'js_getSeconds' |
|
161 |
ArithmeticValue #'js_add:' |
|
561 | 162 |
ArithmeticValue #'js_addFromNumber:' |
163 |
ArithmeticValue #'js_addFromTime:' |
|
329 | 164 |
Behavior #'js_new' |
165 |
Behavior #'js_new:' |
|
166 |
Block typeof |
|
167 |
Boolean typeof |
|
168 |
CharacterArray charAt0: |
|
169 |
CharacterArray charAt1: |
|
170 |
CharacterArray charCodeAt0: |
|
171 |
CharacterArray charCodeAt1: |
|
172 |
CharacterArray indexOf0: |
|
173 |
CharacterArray indexOf1: |
|
561 | 174 |
CharacterArray #'js_add:' |
175 |
CharacterArray #'js_addFromNumber:' |
|
176 |
CharacterArray #'js_addFromString:' |
|
177 |
CharacterArray #'js_addFromTime:' |
|
329 | 178 |
CharacterArray lastIndexOf0: |
179 |
CharacterArray lastIndexOf1: |
|
180 |
CharacterArray quote |
|
181 |
CharacterArray split: |
|
182 |
CharacterArray #'substr0:_:' |
|
183 |
CharacterArray #'substr1:_:' |
|
184 |
CharacterArray substring0: |
|
185 |
CharacterArray #'substring0:_:' |
|
186 |
CharacterArray substring1: |
|
187 |
CharacterArray #'substring1:_:' |
|
188 |
CharacterArray toLowerCase |
|
189 |
CharacterArray toUpperCase |
|
190 |
CharacterArray trim |
|
191 |
CharacterArray trimLeft |
|
192 |
CharacterArray trimRight |
|
193 |
CharacterArray typeof |
|
194 |
Collection length |
|
195 |
Number toExponential: |
|
196 |
Number #'toExponential:_:' |
|
197 |
Number toFixed: |
|
198 |
Number typeof |
|
561 | 199 |
Object #'js_addFromString:' |
329 | 200 |
Object typeof |
201 |
SequenceableCollection concat: |
|
202 |
SequenceableCollection every: |
|
203 |
SequenceableCollection filter: |
|
204 |
SequenceableCollection forEach: |
|
205 |
SequenceableCollection indexOf0: |
|
206 |
SequenceableCollection indexOf1: |
|
207 |
SequenceableCollection join: |
|
427 | 208 |
SequenceableCollection #'js_add:' |
329 | 209 |
SequenceableCollection #'js_map:' |
210 |
SequenceableCollection lastIndexOf0: |
|
211 |
SequenceableCollection lastIndexOf1: |
|
212 |
SequenceableCollection pop |
|
213 |
SequenceableCollection push: |
|
214 |
SequenceableCollection reduce0: |
|
215 |
SequenceableCollection #'reduce0:_:' |
|
216 |
SequenceableCollection reduce1: |
|
217 |
SequenceableCollection #'reduce1:_:' |
|
218 |
SequenceableCollection shift |
|
219 |
SequenceableCollection #'slice0:_:' |
|
220 |
SequenceableCollection #'slice1:_:' |
|
221 |
SequenceableCollection some: |
|
222 |
SequenceableCollection unshift: |
|
223 |
Stream #'show:_:' |
|
224 |
Stream #'show:_:_:' |
|
225 |
Stream #'show:_:_:_:' |
|
226 |
Stream #'show:_:_:_:_:' |
|
227 |
Stream #'show:_:_:_:_:_:' |
|
561 | 228 |
Stream #'show:_:_:_:_:_:_:' |
329 | 229 |
Stream #'showCR:_:' |
230 |
Stream #'showCR:_:_:' |
|
231 |
Stream #'showCR:_:_:_:' |
|
232 |
Stream #'showCR:_:_:_:_:' |
|
233 |
Stream #'showCR:_:_:_:_:_:' |
|
561 | 234 |
Stream #'showCR:_:_:_:_:_:_:' |
329 | 235 |
UndefinedObject typeof |
236 |
'Collection class' #'with:_:' |
|
237 |
'Collection class' #'with:_:_:' |
|
238 |
'Collection class' #'with:_:_:_:' |
|
239 |
'Collection class' #'with:_:_:_:_:' |
|
240 |
'Collection class' #'with:_:_:_:_:_:' |
|
241 |
'Collection class' #'with:_:_:_:_:_:_:' |
|
242 |
'Collection class' #'with:_:_:_:_:_:_:_:' |
|
243 |
'Date class' #'js_new:' |
|
244 |
'Date class' now |
|
561 | 245 |
'GenericException class' #'js_new:' |
329 | 246 |
'Number class' #'MAX_VALUE' |
247 |
'Number class' #'MIN_VALUE' |
|
248 |
'Number class' #'NEGATIVE_INFINITY' |
|
249 |
'Number class' NaN |
|
250 |
'Number class' #'POSITIVE_INFINITY' |
|
251 |
'Number class' #'js_new:' |
|
252 |
'String class' fromCharCode: |
|
217 | 253 |
) |
254 |
! ! |
|
255 |
||
256 |
!stx_libjavascript class methodsFor:'description - project information'! |
|
257 |
||
577 | 258 |
applicationIconFileName |
259 |
"Return the name (without suffix) of an icon-file (the app's icon); will be included in the rc-resource file" |
|
260 |
||
261 |
^ nil |
|
262 |
"/ ^ self applicationName |
|
263 |
! |
|
264 |
||
217 | 265 |
companyName |
266 |
"Return a companyname which will appear in <lib>.rc" |
|
267 |
||
268 |
^ 'eXept Software AG' |
|
269 |
! |
|
270 |
||
271 |
description |
|
272 |
"Return a description string which will appear in nt.def / bc.def" |
|
273 |
||
334 | 274 |
^ 'Smalltalk/X JavaScript Compiler' |
217 | 275 |
! |
276 |
||
277 |
legalCopyright |
|
278 |
"Return a copyright string which will appear in <lib>.rc" |
|
279 |
||
534 | 280 |
^ 'Copyright Claus Gittinger 1988-2012\nCopyright eXept Software AG 1998-2012' |
262 | 281 |
|
534 | 282 |
"Modified: / 18-07-2012 / 19:11:45 / cg" |
577 | 283 |
! |
284 |
||
285 |
productName |
|
286 |
"Return a product name which will appear in <lib>.rc" |
|
287 |
||
288 |
^ 'Smalltalk/X' |
|
217 | 289 |
! ! |
290 |
||
291 |
!stx_libjavascript class methodsFor:'documentation'! |
|
292 |
||
293 |
version |
|
294 |
^ '$Header$' |
|
378 | 295 |
! |
296 |
||
297 |
version_CVS |
|
298 |
^ '$Header$' |
|
217 | 299 |
! ! |
577 | 300 |