--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/compiler/TEnvironment.st Mon Sep 14 11:19:10 2015 +0100
@@ -0,0 +1,40 @@
+"{ 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:'lookup by name'!
+
+classOrTraitNamed: className
+ | classOrTrait |
+
+ classOrTrait := super classOrTraitNamed: className.
+ classOrTrait isNil ifTrue:[
+ self addElements: (provider definitionForClassNamed: className).
+ ].
+ classOrTrait := super classOrTraitNamed: className.
+ ^ classOrTrait.
+
+ "Created: / 12-09-2015 / 09:48:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+! !
+