public class

MethodExpression

extends NaryExpression
java.lang.Object
   ↳ sun.tools.tree.Node
     ↳ sun.tools.tree.Expression
       ↳ sun.tools.tree.UnaryExpression
         ↳ sun.tools.tree.NaryExpression
           ↳ sun.tools.tree.MethodExpression

Class Overview

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 interface sun.tools.java.Constants
From interface sun.tools.java.RuntimeConstants
Public Constructors
MethodExpression(long where, Expression right, Identifier id, Expression[] args)
constructor
MethodExpression(long where, Expression right, MemberDefinition field, Expression[] args)
MethodExpression(long where, Expression right, MemberDefinition field, Expression[] args, boolean forceSuper)
Public Methods
Vset check(Environment env, Context ctx, Vset vset, Hashtable exp)
Check void expression
Vset checkValue(Environment env, Context ctx, Vset vset, Hashtable exp)
Check expression type
void codeValue(Environment env, Context ctx, Assembler asm)
Code
Expression copyInline(Context ctx)
Create a copy of the expression for method inlining
int costInline(int thresh, Environment env, Context ctx)
The cost of inlining this expression
Expression firstConstructor()
Check if the first thing is a constructor invocation
Expression getImplementation()
Type checking may assign a more complex implementation to an innocuous-looking expression (like an identifier).
Expression inline(Environment env, Context ctx)
Inline
Expression inlineValue(Environment env, Context ctx)
void print(PrintStream out)
Print
[Expand]
Inherited Methods
From class sun.tools.tree.NaryExpression
From class sun.tools.tree.UnaryExpression
From class sun.tools.tree.Expression
From class sun.tools.tree.Node
From class java.lang.Object

Public Constructors

public MethodExpression (long where, Expression right, Identifier id, Expression[] args)

constructor

public MethodExpression (long where, Expression right, MemberDefinition field, Expression[] args)

public MethodExpression (long where, Expression right, MemberDefinition field, Expression[] args, boolean forceSuper)

Public Methods

public Vset check (Environment env, Context ctx, Vset vset, Hashtable exp)

Check void expression

public Vset checkValue (Environment env, Context ctx, Vset vset, Hashtable exp)

Check expression type

public void codeValue (Environment env, Context ctx, Assembler asm)

Code

public Expression copyInline (Context ctx)

Create a copy of the expression for method inlining

public int costInline (int thresh, Environment env, Context ctx)

The cost of inlining this expression

public Expression firstConstructor ()

Check if the first thing is a constructor invocation

public Expression getImplementation ()

Type checking may assign a more complex implementation to an innocuous-looking expression (like an identifier). Return that implementation, or the original expression itself if there is no special implementation.

This appears at present to be dead code, and is not called from within javac. Access to the implementation generally occurs within the same class, and thus uses the underlying field directly.

public Expression inline (Environment env, Context ctx)

Inline

public Expression inlineValue (Environment env, Context ctx)

public void print (PrintStream out)

Print