class_body
{ "{"
field_declaration (+29 nodes collapsed)
field_declaration
modifiers
private "private"
final "final"
type_identifier "Scope"
variable_declarator
identifier "parent"
; ";"
field_declaration
modifiers
private "private"
final "final"
integral_type
int "int"
variable_declarator
identifier "depth"
; ";"
field_declaration
modifiers
private "private"
final "final"
type_identifier "Node"
variable_declarator
identifier "rootNode"
; ";"
block_comment "/** The type of {@code this} in the current scope. */"
field_declaration
modifiers
private "private"
final "final"
type_identifier "ObjectType"
variable_declarator
identifier "thisType"
; ";"
block_comment "/** Whether this is a bottom scope for the purposes of type "...
field_declaration
modifiers
private "private"
final "final"
boolean_type "boolean"
variable_declarator
identifier "isBottom"
; ";"
block_comment "/** Stores info about a variable */"
class_declaration (+868 nodes collapsed)
block_comment "/**\n * A special subclass of Var used to distinguish \"argu"...
line_comment "// TODO(johnlenz): Include this the list of Vars for the sco"...
line_comment "// TODO(johnlenz): provide the type of \"Arguments\"."
block_comment "/**\n * Creates a Scope given the parent Scope and the root"...
constructor_declaration (+146 nodes collapsed)
block_comment "/**\n * Creates a global Scope.\n * @param rootNode Typic"...
constructor_declaration (+70 nodes collapsed)
block_comment "/**\n * Creates a empty Scope (bottom of the lattice).\n *"...
constructor_declaration (+60 nodes collapsed)
block_comment "/** The depth of the scope. The global scope has depth 0. */"
method_declaration
integral_type
int "int"
identifier "getDepth"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "depth"
; ";"
} "}"
block_comment "/** Whether this is the bottom of the lattice. */"
method_declaration
boolean_type "boolean"
identifier "isBottom"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "isBottom"
; ";"
} "}"
block_comment "/**\n * Gets the container node of the scope. This is typic"...
method_declaration
modifiers
public "public"
type_identifier "Node"
identifier "getRootNode"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "rootNode"
; ";"
} "}"
method_declaration
modifiers
public "public"
type_identifier "Scope"
identifier "getParent"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "parent"
; ";"
} "}"
method_declaration (+50 nodes collapsed)
method_declaration (+23 nodes collapsed)
block_comment "/**\n * Gets the type of {@code this} in the current scope."...
method_declaration
modifiers
public "public"
type_identifier "ObjectType"
identifier "getTypeOfThis"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
identifier "thisType"
; ";"
} "}"
block_comment "/**\n * Declares a variable whose type is inferred.\n *\n "...
method_declaration (+41 nodes collapsed)
block_comment "/**\n * Declares a variable.\n *\n * @param name name of "...
method_declaration (+153 nodes collapsed)
block_comment "/**\n * Undeclares a variable, to be used when the compiler"...
method_declaration (+64 nodes collapsed)
method_declaration (+28 nodes collapsed)
method_declaration (+30 nodes collapsed)
block_comment "/**\n * Returns the variable, may be null\n */"
method_declaration (+77 nodes collapsed)
block_comment "/**\n * Get a unique VAR object to represents \"arguments\" w"...
block_comment "/**\n * Returns true if a variable is declared.\n */"
method_declaration (+83 nodes collapsed)
block_comment "/**\n * Return an iterator over all of the variables declar"...
method_declaration (+32 nodes collapsed)
block_comment "/**\n * Returns number of variables in this scope\n */"
method_declaration (+22 nodes collapsed)
block_comment "/**\n * Returns whether this is the global scope.\n */"
method_declaration
modifiers
public "public"
boolean_type "boolean"
identifier "isGlobal"
formal_parameters
( "("
) ")"
block
{ "{"
return_statement
return "return"
binary_expression
identifier "parent"
== "=="
null_literal "null"
; ";"
} "}"
block_comment "/**\n * Returns whether this is a local scope (i.e. not the"...
method_declaration (+21 nodes collapsed)
} "}"