Cface__CModifierNode.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 12 Aug 2015 07:32:13 +0100
changeset 43 9327987437ae
parent 41 edb5e4849b79
permissions -rw-r--r--
Added mappings for LLVM C and LLVM C Extensions These are used to generate C callouts for jv:llvm_s project.

"{ Package: 'jv:cface' }"

"{ NameSpace: Cface }"

CNode subclass:#CModifierNode
	instanceVariableNames:'type'
	classVariableNames:''
	poolDictionaries:''
	category:'Cface-C AST'
!


!CModifierNode methodsFor:'accessing'!

cByteSize

    ^type cByteSize

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

cName

    ^type cName

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

ffiTypeSymbol

    ^self subclassResponsibility

    "Created: / 03-07-2008 / 22:59:10 / Jan Vrany <vranyj1@fel.cvut.cz>"
!

stxStructFieldGetterSelector
    ^ type stxStructFieldGetterSelector

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

stxStructFieldSetterSelector
    ^ (self stxStructFieldGetterSelector , 'put:') asSymbol

    "Created: / 09-09-2008 / 21:33:21 / Jan Vrany <vranyj1@fel.cvut.cz>"
    "Modified: / 30-05-2012 / 21:41:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
!

type
    ^ type

    "Created: / 10-02-2008 / 19:53:15 / janfrog"
!

type:something
    type := something.

    "Created: / 10-02-2008 / 19:53:15 / janfrog"
! !

!CModifierNode methodsFor:'converting'!

resolved
    ^ self

    "Created: / 17-02-2008 / 17:56:03 / janfrog"
! !

!CModifierNode methodsFor:'testing'!

isCModifierNode
    ^ true

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

!CModifierNode 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 visitCModifierNode:self
!

isUnresolved
    self assert: type isUnresolved not.
    ^ false

    "Created: / 06-07-2015 / 22:41:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!CModifierNode class methodsFor:'documentation'!

version
    ^ '$Id$'
!

version_SVN
    ^ '$Id$'
! !