예제 #1
0
파일: AST.cs 프로젝트: apspecial/IFN660
 public override bool ResolveNames(LexicalScope scope)
 {
     if (typeDeclaration != null)
     {
         typeDeclaration.ResolveNames(scope);
     }
     return(true);
 }
예제 #2
0
파일: AST.cs 프로젝트: apspecial/IFN660
 public override bool ResolveNames(LexicalScope scope)
 {
     if (scope != null)
     {
         declaration = scope.Resolve(name);
     }
     return(true);
 }
예제 #3
0
파일: AST.cs 프로젝트: apspecial/IFN660
        public override bool ResolveNames(LexicalScope scope)
        {
            var newScope = new LexicalScope(scope);

            foreach (var blkstat in blockStatements)
            {
                if (blkstat is Declaration)
                {
                    var decl = (Declaration)blkstat;
                    newScope.Add(decl);
                }
            }
            foreach (var blkstat in blockStatements)
            {
                ResolveNames(newScope);
            }
            return(true);
        }
예제 #4
0
파일: AST.cs 프로젝트: apspecial/IFN660
        public override bool ResolveNames(LexicalScope scope)
        {
            identifier.ResolveNames(scope);
            var newScope = new LexicalScope(scope);

            foreach (var formal in formalParameterList)
            {
                if (formal is Declaration)
                {
                    var decl = (Declaration)formal;
                    newScope.Add(decl);
                }
            }
            foreach (var formal in formalParameterList)
            {
                ResolveNames(newScope);
            }
            return(true);
        }
예제 #5
0
 public LexicalScope(LexicalScope parentScope)
 {
     this.parentScope = parentScope;
     symbol_table     = new Dictionary <string, Declaration>();
 }
예제 #6
0
파일: Type.cs 프로젝트: apspecial/IFN660
 public override bool ResolveNames(JavaCompiler.LexicalScope scope)
 {
     return(true);
 }
예제 #7
0
파일: AST.cs 프로젝트: apspecial/IFN660
 public override bool ResolveNames(LexicalScope scope)
 {
     return(true);
 }
예제 #8
0
파일: AST.cs 프로젝트: apspecial/IFN660
 public override bool ResolveNames(LexicalScope scope)
 {
     identifier.ResolveNames(scope);
     return(true);
 }
예제 #9
0
파일: AST.cs 프로젝트: apspecial/IFN660
 public override bool ResolveNames(LexicalScope scope)
 {
     methodDeclaration.ResolveNames(scope);
     return(true);
 }
예제 #10
0
파일: AST.cs 프로젝트: apspecial/IFN660
 public override bool ResolveNames(LexicalScope scope)
 {
     methodHeader.ResolveNames(scope);
     methodBody.ResolveNames(scope);
     return(true);
 }
예제 #11
0
파일: AST.cs 프로젝트: apspecial/IFN660
 public abstract bool ResolveNames(LexicalScope scope);
예제 #12
0
파일: AST.cs 프로젝트: apspecial/IFN660
 public override bool ResolveNames(LexicalScope scope)
 {
     variableDeclarator.ResolveNames(scope);
     return(true);
 }
예제 #13
0
파일: AST.cs 프로젝트: apspecial/IFN660
 public override bool ResolveNames(LexicalScope scope)
 {
     assignment.ResolveNames(scope);
     return(true);
 }