Cface__CStructuredNode.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Tue, 12 Jul 2011 15:38:42 +0000
changeset 16 ffcbe7184a53
parent 14 1f730d82496e
child 18 2f55519f3d0b
permissions -rw-r--r--
Fixes...

"{ Package: 'cvut:fel/cface' }"

"{ NameSpace: Cface }"

CDerivedTypeNode subclass:#CStructuredNode
	instanceVariableNames:'cByteSize fields'
	classVariableNames:''
	poolDictionaries:''
	category:'Cface-C AST'
!


!CStructuredNode methodsFor:'accessing'!

cByteSize
    ^ cByteSize

    "Created: / 09-09-2008 / 16:49:58 / Jan Vrany <vranyj1@fel.cvut.cz>"
!

cByteSize:anInteger
    cByteSize := anInteger.

    "Created: / 09-09-2008 / 16:49:58 / Jan Vrany <vranyj1@fel.cvut.cz>"
!

ffiTypeSymbol
    "superclass Cface::CTypeNode says that I am responsible to implement this method"

    ^ self shouldImplement
!

fields
    ^ fields

    "Created: / 10-07-2008 / 08:43:26 / Jan Vrany <vranyj1@fel.cvut.cz>"
!

fields:aCollection
    fields := aCollection.
    fields do:[:f|f owner: self].

    "Created: / 10-07-2008 / 08:43:26 / Jan Vrany <vranyj1@fel.cvut.cz>"
!

stxStructFieldGetterSelector
    ^ #at:

    "Created: / 09-09-2008 / 21:32:39 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !

!CStructuredNode methodsFor:'testing'!

isCStructuredNode
    ^ true
! !

!CStructuredNode 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 visitCStructuredNode:self
! !

!CStructuredNode class methodsFor:'documentation'!

version
    ^'$Id$'
!

version_SVN
    ^ '$Id$'
! !