polyglot.ast
Interface ClassDecl

All Superinterfaces:
ClassMember, java.lang.Cloneable, Copy, JL, Node, NodeOps, Term, TopLevelDecl
All Known Subinterfaces:
CofferClassDecl, PolyJClassDecl
All Known Implementing Classes:
ClassDecl_c, CofferClassDecl_c, PolyJClassDecl_c

public interface ClassDecl
extends Term, TopLevelDecl, ClassMember

A ClassDecl represents a top-level, member, or local class declaration.


Method Summary
 ClassBody body()
          The class's body.
 ClassDecl body(ClassBody body)
          Set the class's body.
 Flags flags()
          The class declaration's flags.
 ClassDecl flags(Flags flags)
          Set the class declaration's flags.
 java.util.List interfaces()
          The class's interface list.
 ClassDecl interfaces(java.util.List interfaces)
          Set the class's interface list.
 java.lang.String name()
          The class declaration's name.
 ClassDecl name(java.lang.String name)
          Set the class declaration's name.
 TypeNode superClass()
          The class's super class.
 ClassDecl superClass(TypeNode superClass)
          Set the class's super class.
 ParsedClassType type()
          The type of the class declaration.
 ClassDecl type(ParsedClassType type)
          Set the type of the class declaration.
 
Methods inherited from interface polyglot.ast.Term
acceptCFG, entry, reachable, reachable
 
Methods inherited from interface polyglot.ast.Node
childExpectedType, del, del, dump, ext, ext, ext, ext, position, position, visit, visitChild, visitEdge, visitList
 
Methods inherited from interface polyglot.ast.JL
init, node
 
Methods inherited from interface polyglot.ast.NodeOps
addDecls, addMembers, addMembersEnter, buildTypes, buildTypesEnter, disambiguate, disambiguateEnter, enterScope, enterScope, exceptionCheck, exceptionCheckEnter, prettyPrint, throwTypes, translate, typeCheck, typeCheckEnter, visitChildren
 
Methods inherited from interface polyglot.util.Copy
copy
 

Method Detail

type

public ParsedClassType type()
The type of the class declaration.


type

public ClassDecl type(ParsedClassType type)
Set the type of the class declaration.


flags

public Flags flags()
The class declaration's flags.

Specified by:
flags in interface TopLevelDecl

flags

public ClassDecl flags(Flags flags)
Set the class declaration's flags.


name

public java.lang.String name()
The class declaration's name.

Specified by:
name in interface TopLevelDecl

name

public ClassDecl name(java.lang.String name)
Set the class declaration's name.


superClass

public TypeNode superClass()
The class's super class.


superClass

public ClassDecl superClass(TypeNode superClass)
Set the class's super class.


interfaces

public java.util.List interfaces()
The class's interface list.

Returns:
A list of TypeNode.

interfaces

public ClassDecl interfaces(java.util.List interfaces)
Set the class's interface list.

Parameters:
interfaces - A list of TypeNode.

body

public ClassBody body()
The class's body.


body

public ClassDecl body(ClassBody body)
Set the class's body.