Cface__CArgumentNode.st
changeset 1 b6c0180314d1
child 14 1f730d82496e
equal deleted inserted replaced
0:9bbbbb659d8b 1:b6c0180314d1
       
     1 "{ Package: 'cvut:fel/cface' }"
       
     2 
       
     3 "{ NameSpace: Cface }"
       
     4 
       
     5 CDefinitionNode subclass:#CArgumentNode
       
     6 	instanceVariableNames:'type'
       
     7 	classVariableNames:''
       
     8 	poolDictionaries:''
       
     9 	category:'Cface-C AST'
       
    10 !
       
    11 
       
    12 
       
    13 !CArgumentNode methodsFor:'accessing'!
       
    14 
       
    15 smalltalkName
       
    16 
       
    17     ^self cName
       
    18 
       
    19     "Created: / 17-02-2008 / 17:54:46 / janfrog"
       
    20 !
       
    21 
       
    22 type
       
    23     ^ type
       
    24 
       
    25     "Created: / 10-02-2008 / 19:19:35 / janfrog"
       
    26 !
       
    27 
       
    28 type:something
       
    29     type := something.
       
    30 
       
    31     "Created: / 10-02-2008 / 19:19:35 / janfrog"
       
    32 ! !
       
    33 
       
    34 !CArgumentNode methodsFor:'printing'!
       
    35 
       
    36 printOn: stream indent: indent
       
    37 
       
    38     stream nextPutAll:'(argument'; cr.
       
    39     stream next: indent + 1 put: Character tab; nextPut:$(.
       
    40     type printOn: stream indent: indent + 1.
       
    41     stream nextPut: $); cr.
       
    42     stream next: indent + 1 put: Character tab.
       
    43     stream nextPutAll:cName; nextPut:$)
       
    44 
       
    45     "Created: / 17-02-2008 / 20:40:05 / janfrog"
       
    46     "Modified: / 04-03-2008 / 10:57:11 / janfrog"
       
    47 ! !
       
    48 
       
    49 !CArgumentNode methodsFor:'testing'!
       
    50 
       
    51 isCArgumentNode
       
    52     ^ true
       
    53 
       
    54     "Created: / 17-02-2008 / 21:49:53 / janfrog"
       
    55 ! !
       
    56 
       
    57 !CArgumentNode methodsFor:'visiting'!
       
    58 
       
    59 acceptVisitor:aVisitor 
       
    60     "Double dispatch back to the visitor, passing my type encoded in
       
    61      the selector (visitor pattern)"
       
    62     "stub code automatically generated - please change if required"
       
    63     
       
    64     ^ aVisitor visitCArgumentNode:self
       
    65 
       
    66     "Created: / 28-11-2007 / 17:08:44 / haja"
       
    67     "Modified: / 18-02-2008 / 14:22:58 / janfrog"
       
    68 ! !
       
    69 
       
    70 !CArgumentNode class methodsFor:'documentation'!
       
    71 
       
    72 version
       
    73     ^ '$Header: /opt/data/cvs/cvut-fel/cface/Cface__CArgumentNode.st,v 1.1 2008/02/26 15:59:39 vranyj1 Exp $'
       
    74 ! !