public class

LocalMember

extends MemberDefinition
java.lang.Object
   ↳ sun.tools.java.MemberDefinition
     ↳ sun.tools.tree.LocalMember

Class Overview

A local Field WARNING: The contents of this source file are not part of any supported API. Code that depends on them does so at its own risk: they are subject to change or removal without notice.

Summary

[Expand]
Inherited Constants
From interface sun.tools.java.Constants
From interface sun.tools.java.RuntimeConstants
[Expand]
Inherited Fields
From class sun.tools.java.MemberDefinition
From interface sun.tools.java.Constants
From interface sun.tools.java.RuntimeConstants
Public Constructors
LocalMember(long where, ClassDefinition clazz, int modifiers, Type type, Identifier name)
Constructor
LocalMember(ClassDefinition innerClass)
Constructor for a block-inner class.
Public Methods
static LocalMember[] copyArguments(Context ctx, MemberDefinition field)
May inline copies of all the arguments of the given method.
LocalMember copyInline(Context ctx)
Make a copy of this field, which is an argument to a method or constructor.
static void doneWithArguments(Context ctx, LocalMember[] res)
Call this when finished with the result of a copyArguments() call.
LocalMember getCurrentInlineCopy(Context ctx)
Returns the previous result of copyInline(ctx).
int getNumber(Context ctx)
Value number for vsets, or -1 if none.
int getScopeNumber()
Return current nesting level, i.e., the value of 'scopeNumber'.
Node getValue(Environment env)
Return value
boolean isInlineable(Environment env, boolean fromFinal)
Is this local variable's value stable and simple enough to be directly substituted for occurrences of the variable itself? (This decision is made by VarDeclarationStatement.inline().)
boolean isLocal()
Special checks
boolean isUsed()
Check if used
[Expand]
Inherited Methods
From class sun.tools.java.MemberDefinition
From class java.lang.Object

Public Constructors

public LocalMember (long where, ClassDefinition clazz, int modifiers, Type type, Identifier name)

Constructor

public LocalMember (ClassDefinition innerClass)

Constructor for a block-inner class.

Public Methods

public static LocalMember[] copyArguments (Context ctx, MemberDefinition field)

May inline copies of all the arguments of the given method.

public LocalMember copyInline (Context ctx)

Make a copy of this field, which is an argument to a method or constructor. Arrange so that when occurrences of the field are encountered in an immediately following copyInline() operation, the expression nodes will replace the original argument by the fresh copy.

public static void doneWithArguments (Context ctx, LocalMember[] res)

Call this when finished with the result of a copyArguments() call.

public LocalMember getCurrentInlineCopy (Context ctx)

Returns the previous result of copyInline(ctx). Must be called in the course of an Expression.copyInline() operation that immediately follows the LocalMember.copyInline(). Return "this" if there is no such copy.

public int getNumber (Context ctx)

Value number for vsets, or -1 if none.

public int getScopeNumber ()

Return current nesting level, i.e., the value of 'scopeNumber'. Made public for the benefit of 'ClassDefinition.resolveName'.

public Node getValue (Environment env)

Return value

public boolean isInlineable (Environment env, boolean fromFinal)

Is this local variable's value stable and simple enough to be directly substituted for occurrences of the variable itself? (This decision is made by VarDeclarationStatement.inline().)

public boolean isLocal ()

Special checks

public boolean isUsed ()

Check if used