package polyglot.ast; import polyglot.types.Type; import polyglot.types.Flags; import polyglot.types.LocalInstance; import polyglot.types.SemanticException; /** * A <code>VarDecl</code> represents a variable declaration, of either a formal * or a local variable. */ public interface VarDecl extends Term { /** Get the type object for the declaration's type. */ Type declType(); /** Get the declaration's flags. */ Flags flags(); /** Get the declaration's type. */ TypeNode type(); /** Get the declaration's name. */ String name(); /** * Get the type object for the local we are declaring. This field may * not be valid until after signature disambiguation. */ LocalInstance localInstance(); }