Cface__CLongNode.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 03 Jul 2008 22:00:07 +0000
changeset 2 cfd2c393abfe
parent 1 b6c0180314d1
child 5 c110eef5b9ef
permissions -rw-r--r--
Smalltalk/X generator improvements: - generate C enums as SharedPools with accessors - generate externa function calls using FFI. Not yet finished! - CairoMappings improved.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'cvut:fel/cface' }"
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     3
"{ NameSpace: Cface }"
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
CModifierNode subclass:#CLongNode
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
	instanceVariableNames:''
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	classVariableNames:''
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
	poolDictionaries:''
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
	category:'Cface-C AST'
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
!
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
2
cfd2c393abfe Smalltalk/X generator improvements:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    13
!CLongNode methodsFor:'accessing'!
cfd2c393abfe Smalltalk/X generator improvements:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    14
cfd2c393abfe Smalltalk/X generator improvements:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    15
ffiTypeSymbol
cfd2c393abfe Smalltalk/X generator improvements:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    16
    "Superclass Cface::CModifierNode says that I am responsible to implement this method"
cfd2c393abfe Smalltalk/X generator improvements:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    17
cfd2c393abfe Smalltalk/X generator improvements:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    18
    ^#int32
cfd2c393abfe Smalltalk/X generator improvements:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    19
cfd2c393abfe Smalltalk/X generator improvements:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    20
    "Created: / 03-07-2008 / 23:02:09 / Jan Vrany <vranyj1@fel.cvut.cz>"
cfd2c393abfe Smalltalk/X generator improvements:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    21
! !
cfd2c393abfe Smalltalk/X generator improvements:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 1
diff changeset
    22
1
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
!CLongNode methodsFor:'printing'!
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
printOn: stream indent: indent
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
    stream 
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
        nextPutAll:'long '; 
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
        cr;
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
        next: indent + 1 put: Character tab.
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
    type printOn: stream indent: indent + 1.
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
    "Created: / 04-03-2008 / 10:57:12 / janfrog"
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
! !
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
!CLongNode methodsFor:'testing'!
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
isCLongNode
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
    ^ true
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
    "Created: / 17-02-2008 / 21:52:38 / janfrog"
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
! !
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
!CLongNode methodsFor:'visiting'!
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
acceptVisitor:aVisitor 
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
    "Double dispatch back to the visitor, passing my type encoded in
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
     the selector (visitor pattern)"
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
    "stub code automatically generated - please change if required"
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
    ^ aVisitor visitCLongNode:self
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
    "Created: / 12-02-2008 / 22:14:55 / janfrog"
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
! !
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
!CLongNode class methodsFor:'documentation'!
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
version
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
    ^ '$Header: /opt/data/cvs/cvut-fel/cface/Cface__CLongNode.st,v 1.1 2008/02/26 15:58:50 vranyj1 Exp $'
b6c0180314d1 Initial import
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
! !