nts.interf.base
Interface IVarTableEntry

All Superinterfaces:
IAnnotated, IVisitable

public interface IVarTableEntry
extends IAnnotated, IVisitable

An entry of a variable table. Note that if a variable is annotated, its annotation is stored only at its unprimed entry.

See Also:
IVarTable

Method Summary
 IVarTableEntry counterpart()
           
 boolean isGlobal()
           
 boolean isLocal()
           
 boolean isLogical()
           
 boolean isPrimed()
           
 EModifier modifier()
           
 java.lang.String name()
           
 IScope scope()
           
 java.util.List<IExpr> size()
           
 IType type()
           
 IVarTable varTable()
           
 
Methods inherited from interface nts.interf.base.IAnnotated
annotations, isAnnotated
 
Methods inherited from interface nts.interf.base.IVisitable
accept
 

Method Detail

name

java.lang.String name()
Returns:
the name of the variable

type

IType type()
Returns:
the type of the variable

size

java.util.List<IExpr> size()
Returns:
the declared array size. The length of the returned list is equal to type().dimOwn()

modifier

EModifier modifier()
Returns:
the modifier of the variable

scope

IScope scope()
Returns:
the scope where the variable is declared

varTable

IVarTable varTable()
Returns:
the variable table where the variable is declared

isLogical

boolean isLogical()
Returns:
true if and only if the variable is declared in a quantifier scope

isLocal

boolean isLocal()
Returns:
true if and only if the variable is declared in a subsystem scope

isGlobal

boolean isGlobal()
Returns:
true if and only if the variable is declared in the global scope

counterpart

IVarTableEntry counterpart()
Returns:
null if this entry represents a parameter, logical variable of TID. Otherwise, returns entry for x' if this entry represents x, and entry for x if this represents x'.

isPrimed

boolean isPrimed()
Returns:
true if and only if the variable name ends with the prime symbol \'