|
@@ -24,7 +24,7 @@ Class FileScope Extends Scope
|
|
outer=nmspace
|
|
outer=nmspace
|
|
|
|
|
|
For Local member:=Eachin fdecl.members
|
|
For Local member:=Eachin fdecl.members
|
|
-
|
|
|
|
|
|
+
|
|
Local node:=member.ToNode( Self )
|
|
Local node:=member.ToNode( Self )
|
|
|
|
|
|
If member.IsExtension
|
|
If member.IsExtension
|
|
@@ -66,10 +66,8 @@ Class FileScope Extends Scope
|
|
Next
|
|
Next
|
|
End
|
|
End
|
|
|
|
|
|
- Method Semant()
|
|
|
|
|
|
+ Method SemantUsings()
|
|
|
|
|
|
-' Print "Semating:"+fdecl.path
|
|
|
|
-
|
|
|
|
If nmspace<>Builder.monkeyNamespace
|
|
If nmspace<>Builder.monkeyNamespace
|
|
UsingAll( Builder.monkeyNamespace )
|
|
UsingAll( Builder.monkeyNamespace )
|
|
Endif
|
|
Endif
|
|
@@ -82,20 +80,23 @@ Class FileScope Extends Scope
|
|
Endif
|
|
Endif
|
|
|
|
|
|
If use.EndsWith( ".." )
|
|
If use.EndsWith( ".." )
|
|
- Local nmspace:=Builder.GetNamespace( use.Slice( 0,-2 ) )
|
|
|
|
|
|
+ Local nmspace:=Builder.GetNamespace( use.Slice( 0,-2 ),True )
|
|
UsingAll( nmspace )
|
|
UsingAll( nmspace )
|
|
Continue
|
|
Continue
|
|
Endif
|
|
Endif
|
|
|
|
|
|
If use.EndsWith( ".*" )
|
|
If use.EndsWith( ".*" )
|
|
- Local nmspace:=Builder.GetNamespace( use.Slice( 0,-2 ) )
|
|
|
|
|
|
+ Local nmspace:=Builder.GetNamespace( use.Slice( 0,-2 ),True )
|
|
UsingInner( nmspace )
|
|
UsingInner( nmspace )
|
|
Continue
|
|
Continue
|
|
Endif
|
|
Endif
|
|
|
|
|
|
- Local nmspace:=Builder.GetNamespace( use )
|
|
|
|
|
|
+ Local nmspace:=Builder.GetNamespace( use,True )
|
|
If nmspace UsingNamespace( nmspace )
|
|
If nmspace UsingNamespace( nmspace )
|
|
Next
|
|
Next
|
|
|
|
+ End
|
|
|
|
+
|
|
|
|
+ Method Semant()
|
|
|
|
|
|
For Local node:=Eachin toSemant
|
|
For Local node:=Eachin toSemant
|
|
Try
|
|
Try
|
|
@@ -125,7 +126,7 @@ Class FileScope Extends Scope
|
|
End
|
|
End
|
|
|
|
|
|
Method FindType:Type( ident:String ) Override
|
|
Method FindType:Type( ident:String ) Override
|
|
-
|
|
|
|
|
|
+
|
|
'Search in namespace hierarchy
|
|
'Search in namespace hierarchy
|
|
'
|
|
'
|
|
Local type:=Super.FindType( ident )
|
|
Local type:=Super.FindType( ident )
|