Cface__CNode.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Mon, 06 Jul 2015 07:18:24 +0100
changeset 36 4e586238a9f7
parent 32 d7464405cbda
child 41 edb5e4849b79
permissions -rw-r--r--
Fix in class generator (MethofDefinitionChange>>classVariableNames: now takes collection, not string)

"{ Package: 'jv:cface' }"

"{ NameSpace: Cface }"

Object subclass:#CNode
	instanceVariableNames:'line'
	classVariableNames:''
	poolDictionaries:''
	category:'Cface-C AST'
!


!CNode methodsFor:'accessing'!

line
    ^ line

    "Created: / 10-07-2008 / 20:05:15 / Jan Vrany <vranyj1@fel.cvut.cz>"
!

line:something
    line := something.

    "Created: / 10-07-2008 / 20:05:17 / Jan Vrany <vranyj1@fel.cvut.cz>"
!

priority

    ^50

    "Created: / 17-02-2008 / 17:59:28 / janfrog"
! !

!CNode methodsFor:'printing'!

printLineOn: stream indent: level

    line ifNil:[^self].
    stream nextPutAll:';; Line: '; nextPutAll: line printString; cr.
    stream next: level put: Character tab.

    "Created: / 10-07-2008 / 15:58:13 / Jan Vrany <vranyj1@fel.cvut.cz>"
    "Modified: / 10-07-2008 / 20:05:31 / Jan Vrany <vranyj1@fel.cvut.cz>"
!

printOn: stream

    self printOn: stream indent: 0

    "Created: / 17-02-2008 / 18:10:30 / janfrog"
!

printOn: stream indent: level

    stream next: level put: Character tab.
    super printOn: stream

    "Created: / 17-02-2008 / 18:10:30 / janfrog"
    "Modified: / 10-07-2008 / 20:05:18 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !

!CNode methodsFor:'testing'!

isCArgumentNode
    ^ false

    "Created: / 17-02-2008 / 21:50:16 / janfrog"
!

isCArrayNode
    ^ false

    "Created: / 17-02-2008 / 21:51:50 / janfrog"
!

isCCharNode
    ^ false

    "Created: / 17-02-2008 / 21:50:31 / janfrog"
!

isCConstNode
    ^ false

    "Created: / 17-02-2008 / 21:52:38 / janfrog"
!

isCDefinitionFileNode
    ^ false

    "Created: / 17-02-2008 / 21:50:16 / janfrog"
!

isCDefinitionNode
    ^ false

    "Created: / 17-02-2008 / 21:49:30 / janfrog"
!

isCDoubleNode
    ^ false

    "Created: / 17-02-2008 / 21:50:31 / janfrog"
!

isCEnumNode
    ^ false

    "Created: / 17-02-2008 / 21:52:13 / janfrog"
!

isCEnumValueNode
    ^ false

    "Created: / 17-02-2008 / 21:50:16 / janfrog"
!

isCFloatNode
    ^ false

    "Created: / 17-02-2008 / 21:50:31 / janfrog"
!

isCFunctionNode
    ^ false

    "Created: / 17-02-2008 / 21:50:16 / janfrog"
!

isCFunctionTypeNode
    ^ false

    "Created: / 17-02-2008 / 21:52:13 / janfrog"
!

isCIntNode
    ^ false

    "Created: / 17-02-2008 / 21:50:31 / janfrog"
!

isCLongNode
    ^ false

    "Created: / 17-02-2008 / 21:52:38 / janfrog"
!

isCModifierNode
    ^ false

    "Created: / 17-02-2008 / 21:49:30 / janfrog"
!

isCPointerNode
    ^ false
!

isCPointerToCStructure

    ^false

    "Created: / 04-07-2008 / 15:13:02 / Jan Vrany <vranyj1@fel.cvut.cz>"
!

isCPointerToChar

    ^false

    "Created: / 09-07-2008 / 21:37:58 / Jan Vrany <vranyj1@fel.cvut.cz>"
!

isCShortNode
    ^ false

    "Created: / 17-02-2008 / 21:52:38 / janfrog"
!

isCStructFieldNode
    ^ false

    "Created: / 17-02-2008 / 21:50:16 / janfrog"
!

isCStructNode
    ^ false

    "Modified: / 17-02-2008 / 21:52:13 / janfrog"
!

isCStructuredNode
    ^ false
!

isCUnionNode
    ^ false

    "Created: / 17-02-2008 / 21:52:13 / janfrog"
!

isCUnsignedNode
    ^ false

    "Created: / 17-02-2008 / 21:52:38 / janfrog"
!

isCUserDefinedTypeNode
    ^ false
!

isCVoidNode
    ^ false

    "Created: / 17-02-2008 / 21:50:31 / janfrog"
!

isForeign

    ^false

    "Created: / 09-07-2008 / 19:56:51 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !

!CNode methodsFor:'visiting'!

acceptVisitor:aVisitor 
    "Double dispatch back to the visitor, passing my type encoded in
     the selector (visitor pattern)"

    "stub code automatically generated - please change if required"

    ^ aVisitor visitCNode:self

    "Created: / 12-02-2008 / 22:14:55 / janfrog"
! !

!CNode class methodsFor:'documentation'!

version
    ^ '$Id$'
!

version_SVN
    ^ '$Id$'
! !