Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: javax/ide/model/java/source/tree/DereferenceExpressionT.java


1   /*
2    * @(#)DereferenceExpressionT.java
3    */
4   
5   package javax.ide.model.java.source.tree;
6   
7   /**
8    * Common supertype for expressions performing dereference operations.
9    * The three dereference expressions are: array access, method call,
10   * and dot dereference. <p/>
11   *
12   * @author Andy Yu
13   * */
14  public interface DereferenceExpressionT
15    extends OperatorExpressionT
16  {
17    // ----------------------------------------------------------------------
18  
19    /**
20     * @return The lhs operand of this dereference. Null if none.
21     *
22     * If this is a dot dereference... well, you can figure that one out.
23     *
24     * If this is an array access, the lhs operand will be the array variable.
25     *
26     * If this is a method call, the lhs operand is optional.
27     *
28     * If this is a class creator, the lhs operand is optional. If there
29     * is a lhs operand, it means that this is a qualified class creator and
30     * the lhs operand is the outer class instance being used.
31     */
32    public ExpressionT getLhsOperand();
33  
34    /**
35     * Attempts to set the lhs operand for this expression.
36     *
37     * @param e If null, then this will remove the lhs operand (legal
38     * only for method calls).
39     *
40     * @throws UnsupportedOperationException if this operation is illegal.
41     */
42    public void setLhsOperand( ExpressionT e );
43  }