jif.ast
Class ParamDecl_c

java.lang.Object
  extended by polyglot.ast.Node_c
      extended by jif.ast.ParamDecl_c
All Implemented Interfaces:
java.lang.Cloneable, ParamDecl, polyglot.ast.JL, polyglot.ast.Node, polyglot.ast.NodeOps, polyglot.util.Copy

public class ParamDecl_c
extends polyglot.ast.Node_c
implements ParamDecl

An implementation of the ParamDecl interface.


Field Summary
 
Fields inherited from class polyglot.ast.Node_c
del, error, ext, position
 
Constructor Summary
ParamDecl_c(polyglot.util.Position pos, ParamInstance.Kind kind, polyglot.ast.Id name)
           
 
Method Summary
 polyglot.ast.Node buildTypes(polyglot.visit.TypeBuilder tb)
           
 boolean isCovariantLabel()
           
 boolean isDisambiguated()
           
 boolean isInvariantLabel()
           
 boolean isLabel()
           
 boolean isPrincipal()
           
 ParamInstance.Kind kind()
           
 ParamDecl kind(ParamInstance.Kind kind)
           
 void leaveScope(polyglot.types.Context c)
           
 java.lang.String name()
           
 ParamDecl name(java.lang.String name)
           
 ParamInstance paramInstance()
           
 ParamDecl paramInstance(ParamInstance pi)
           
 void prettyPrint(polyglot.util.CodeWriter w, polyglot.visit.PrettyPrinter tr)
           
 java.lang.String toString()
           
 void translate(polyglot.util.CodeWriter w, polyglot.visit.Translator tr)
           
 
Methods inherited from class polyglot.ast.Node_c
addDecls, buildTypesEnter, checkConstants, childExpectedType, copy, copy, copy, del, del, disambiguate, disambiguateEnter, disambiguateOverride, dump, dump, dump, enterChildScope, enterScope, error, error, exceptionCheck, exceptionCheckEnter, ext, ext, ext, ext, init, isTypeChecked, node, position, position, prettyPrint, prettyPrint, print, printBlock, printSubStmt, throwTypes, typeCheck, typeCheckEnter, typeCheckOverride, visit, visitChild, visitChildren, visitEdge, visitList
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface polyglot.ast.Node
childExpectedType, del, del, dump, error, error, ext, ext, ext, ext, isTypeChecked, position, position, visit, visitChild, visitEdge, visitList
 
Methods inherited from interface polyglot.ast.JL
init, node
 
Methods inherited from interface polyglot.ast.NodeOps
addDecls, buildTypesEnter, checkConstants, copy, copy, disambiguate, disambiguateEnter, disambiguateOverride, dump, dump, enterChildScope, enterScope, exceptionCheck, exceptionCheckEnter, prettyPrint, prettyPrint, throwTypes, typeCheck, typeCheckEnter, typeCheckOverride, visitChildren
 
Methods inherited from interface polyglot.util.Copy
copy
 

Constructor Detail

ParamDecl_c

public ParamDecl_c(polyglot.util.Position pos,
                   ParamInstance.Kind kind,
                   polyglot.ast.Id name)
Method Detail

isDisambiguated

public boolean isDisambiguated()
Specified by:
isDisambiguated in interface polyglot.ast.Node
Overrides:
isDisambiguated in class polyglot.ast.Node_c

kind

public ParamInstance.Kind kind()
Specified by:
kind in interface ParamDecl

kind

public ParamDecl kind(ParamInstance.Kind kind)
Specified by:
kind in interface ParamDecl

name

public java.lang.String name()
Specified by:
name in interface ParamDecl

name

public ParamDecl name(java.lang.String name)
Specified by:
name in interface ParamDecl

paramInstance

public ParamInstance paramInstance()
Specified by:
paramInstance in interface ParamDecl

paramInstance

public ParamDecl paramInstance(ParamInstance pi)
Specified by:
paramInstance in interface ParamDecl

isPrincipal

public boolean isPrincipal()
Specified by:
isPrincipal in interface ParamDecl

isLabel

public boolean isLabel()
Specified by:
isLabel in interface ParamDecl

isInvariantLabel

public boolean isInvariantLabel()
Specified by:
isInvariantLabel in interface ParamDecl

isCovariantLabel

public boolean isCovariantLabel()
Specified by:
isCovariantLabel in interface ParamDecl

leaveScope

public void leaveScope(polyglot.types.Context c)

buildTypes

public polyglot.ast.Node buildTypes(polyglot.visit.TypeBuilder tb)
                             throws polyglot.types.SemanticException
Specified by:
buildTypes in interface polyglot.ast.NodeOps
Overrides:
buildTypes in class polyglot.ast.Node_c
Throws:
polyglot.types.SemanticException

toString

public java.lang.String toString()
Overrides:
toString in class polyglot.ast.Node_c

prettyPrint

public void prettyPrint(polyglot.util.CodeWriter w,
                        polyglot.visit.PrettyPrinter tr)
Specified by:
prettyPrint in interface polyglot.ast.NodeOps
Overrides:
prettyPrint in class polyglot.ast.Node_c

translate

public void translate(polyglot.util.CodeWriter w,
                      polyglot.visit.Translator tr)
Specified by:
translate in interface polyglot.ast.NodeOps
Overrides:
translate in class polyglot.ast.Node_c