equal
deleted
inserted
replaced
|
1 "{ Package: 'stx:goodies/petitparser/parsers/java' }" |
|
2 |
|
3 "{ NameSpace: Smalltalk }" |
|
4 |
|
5 PJTypeNode subclass:#PJArrayTypeNode |
|
6 instanceVariableNames:'dimensions elementType' |
|
7 classVariableNames:'' |
|
8 poolDictionaries:'' |
|
9 category:'PetitJava-AST' |
|
10 ! |
|
11 |
|
12 PJArrayTypeNode comment:'' |
|
13 ! |
|
14 |
|
15 !PJArrayTypeNode class methodsFor:'instance creation'! |
|
16 |
|
17 elementType: aTypeNode dimensions: aNumber |
|
18 |
|
19 ^(self new) elementType: aTypeNode; dimensions: aNumber; yourself |
|
20 ! ! |
|
21 |
|
22 !PJArrayTypeNode methodsFor:'accessing'! |
|
23 |
|
24 dimensions |
|
25 ^ dimensions |
|
26 ! |
|
27 |
|
28 dimensions: anObject |
|
29 dimensions := anObject |
|
30 ! |
|
31 |
|
32 elementType |
|
33 ^ elementType |
|
34 ! |
|
35 |
|
36 elementType: anObject |
|
37 elementType := anObject |
|
38 ! |
|
39 |
|
40 type |
|
41 |
|
42 ^type ifNil: [type := |
|
43 ((1 to: dimensions) |
|
44 inject: elementType type |
|
45 into: [:current :parenthesis | |
|
46 (current , '[]')]) ] |
|
47 ! ! |
|
48 |