Removed syntax for inline assembly, use <primitive: [:asm | ... ]> syntax.
This one is easier to implement and less introusive, syntax-wise. And follows
Smalltalk tradiiton.
"{ Package: 'jv:tea/compiler' }"
"{ NameSpace: Smalltalk }"
TNamespaceDefinition subclass:#TEnvironment
instanceVariableNames:'provider'
classVariableNames:''
poolDictionaries:''
category:'Languages-Tea-Compiler-Model'
!
!TEnvironment methodsFor:'accessing'!
provider
^ provider
!
provider:providerObject
"Set provider, an object used to ask for class definitions if
class is not yet loaded into the receiver"
provider := providerObject.
"Modified (comment): / 12-09-2015 / 09:52:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!TEnvironment methodsFor:'initialization'!
initialize
super initialize.
provider := TFilesystemProvider new
"Created: / 14-09-2015 / 15:13:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !
!TEnvironment methodsFor:'lookup by name'!
classOrTraitNamed: className
| classOrTrait |
classOrTrait := super classOrTraitNamed: className.
classOrTrait isNil ifTrue:[
| class |
class := provider classNamed:className.
class notNil ifTrue:[
self addElement: class.
]
].
classOrTrait := super classOrTraitNamed: className.
^ classOrTrait.
"Created: / 12-09-2015 / 09:48:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
"Modified: / 14-09-2015 / 15:28:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !