示例#1
0
 private DomRegion GetRegion(AST.Node m)
 {
     AST.LexicalInfo l = m.LexicalInfo;
     if (l.Line < 0)
     {
         return(DomRegion.Empty);
     }
     else
     {
         return(new DomRegion(l.Line, 0 /*l.Column*/, l.Line, GetLineEnd(l.Line)));
     }
 }
示例#2
0
		B.LexicalInfo GetLexicalInfo(INode node)
		{
			if (node == null)
				return new B.LexicalInfo(fileName);
			Location point = node.StartLocation;
			if (!point.IsEmpty) {
				lastLexicalInfo = new B.LexicalInfo(fileName, point.Y, point.X);
			}
			if (lastLexicalInfo == null) {
				lastLexicalInfo = new B.LexicalInfo(fileName);
			}
			return lastLexicalInfo;
		}
示例#3
0
 private DomRegion GetClientRegion(AST.Node m)
 {
     AST.LexicalInfo l = m.LexicalInfo;
     if (l.Line < 0)
     {
         return(DomRegion.Empty);
     }
     AST.SourceLocation l2;
     if (m is AST.Method)
     {
         l2 = ((AST.Method)m).Body.EndSourceLocation;
     }
     else if (m is AST.Property)
     {
         AST.Property p = (AST.Property)m;
         if (p.Getter != null && p.Getter.Body != null)
         {
             l2 = p.Getter.Body.EndSourceLocation;
             if (p.Setter != null && p.Setter.Body != null)
             {
                 if (p.Setter.Body.EndSourceLocation.Line > l2.Line)
                 {
                     l2 = p.Setter.Body.EndSourceLocation;
                 }
             }
         }
         else if (p.Setter != null && p.Setter.Body != null)
         {
             l2 = p.Setter.Body.EndSourceLocation;
         }
         else
         {
             l2 = p.EndSourceLocation;
         }
     }
     else
     {
         l2 = m.EndSourceLocation;
     }
     if (l2 == null || l2.Line < 0 || l.Line == l2.Line)
     {
         return(DomRegion.Empty);
     }
     // TODO: use l.Column / l2.Column when the tab-bug has been fixed
     return(new DomRegion(l.Line, GetLineEnd(l.Line), l2.Line, GetLineEnd(l2.Line)));
 }
        B.LexicalInfo GetLexicalInfo(INode node)
        {
            if (node == null)
            {
                return(new B.LexicalInfo(fileName));
            }
            Location point = node.StartLocation;

            if (!point.IsEmpty)
            {
                lastLexicalInfo = new B.LexicalInfo(fileName, point.Y, point.X);
            }
            if (lastLexicalInfo == null)
            {
                lastLexicalInfo = new B.LexicalInfo(fileName);
            }
            return(lastLexicalInfo);
        }
示例#5
0

        
示例#6
0
 public GenericParameterDeclaration(LexicalInfo lexicalInfo) : base(lexicalInfo)
 {
 }
示例#7
0
 public ExceptionHandler(LexicalInfo lexicalInfoProvider) : base(lexicalInfoProvider)
 {
 }
示例#8
0

        
示例#9
0
 public RaiseStatement(LexicalInfo li, Expression exception, StatementModifier modifier) : base(li, exception)
 {
     this.Modifier = modifier;
 }
示例#10
0
 public ReturnStatement(LexicalInfo li, Expression expression, StatementModifier modifier) : base(li)
 {
     this.Expression = expression;
     this.Modifier   = modifier;
 }
示例#11
0
 public ExtendedGeneratorExpression(LexicalInfo lexicalInfo) : base(lexicalInfo)
 {
 }
示例#12
0
 public TryCastExpression(LexicalInfo lexicalInfo) : base(lexicalInfo)
 {
 }
示例#13
0
 public TypeReference(LexicalInfo lexicalInfoProvider) : base(lexicalInfoProvider)
 {
 }
示例#14
0
 public ClassDefinition(LexicalInfo lexicalInfoProvider) : base(lexicalInfoProvider)
 {
 }
示例#15
0
 protected TypeDefinition(LexicalInfo lexicalInfoProvider) : base(lexicalInfoProvider)
 {
 }
示例#16
0
文件: Slice.cs 项目: codehaus/boo
 public Slice(LexicalInfo lexicalInfo, Expression begin, Expression end, Expression step) : base(lexicalInfo)
 {
     this.Begin = begin;
     this.End   = end;
     this.Step  = step;
 }
示例#17
0
文件: Slice.cs 项目: codehaus/boo
 public Slice(LexicalInfo lexicalInfo) : base(lexicalInfo)
 {
 }
示例#18
0
 public TryStatement(LexicalInfo lexicalInfoProvider) : base(lexicalInfoProvider)
 {
 }
示例#19
0
 public RaiseStatement(LexicalInfo lexicalInfo, Expression exception) : base(lexicalInfo)
 {
     this.Exception = exception;
 }
示例#20
0
 public TryCastExpression(LexicalInfo lexicalInfo, Expression target, TypeReference type) : base(lexicalInfo)
 {
     this.Target = target;
     this.Type   = type;
 }
示例#21
0
 void AddError(B.LexicalInfo lex, string errorMessage)
 {
     errors.Add(new CompilerError(lex, errorMessage));
 }
示例#22
0

        
示例#23
0
 public ReturnStatement(LexicalInfo li, Expression expression) : base(li)
 {
     this.Expression = expression;
 }
示例#24
0
 public RaiseStatement(LexicalInfo lexicalInfoProvider) : base(lexicalInfoProvider)
 {
 }
示例#25
0
 public ReturnStatement(LexicalInfo lexicalInfoProvider) : base(lexicalInfoProvider)
 {
 }
示例#26
0
 protected TypeMember(LexicalInfo lexicalInfoProvider) : base(lexicalInfoProvider)
 {
 }
示例#27
0
 public CallableBlockExpression(LexicalInfo lexicalInfo) : base(lexicalInfo)
 {
 }
示例#28
0
 void AddWarning(B.LexicalInfo lex, string warningMessage)
 {
     warnings.Add(new CompilerWarning(lex, warningMessage));
 }
示例#29
0

        
示例#30
0

        
示例#31
0
 public Property(LexicalInfo lexicalInfoProvider) : base(lexicalInfoProvider)
 {
 }