Package org.codehaus.janino

# Class Java.AmbiguousName

java.lang.Object
org.codehaus.janino.Java.Located
org.codehaus.janino.Java.Atom
org.codehaus.janino.Java.Rvalue
org.codehaus.janino.Java.Lvalue
org.codehaus.janino.Java.AmbiguousName

All Implemented Interfaces:
  `Java.ArrayInitializerOrRvalue`, `Java.ElementValue`, `Java.Locatable`

Enclosing class:
  `Java`

public static final class Java.AmbiguousName extends Java.Lvalue
Representation of a JLS7 6.5.2 "ambiguous name".

This class is special: It does not extend/implement the `Java.Atom` subclasses, but overrides `Java.Atom`'s "`to...()`" methods.

## Field Summary

Fields
Modifier and Type
Field
Description
`final String[]`
`identifiers`
The first `n` of these identifiers comprise this ambiguous name.
`final int`
`n`

### Fields inherited from class org.codehaus.janino.Java.Located

`NOWHERE`

## Constructor Summary

Constructors
Constructor
Description
`AmbiguousName(Location location, String[] identifiers)`
`AmbiguousName(Location location, String[] identifiers, int n)`

## Method Summary

Modifier and Type
Method
Description
`<R, EX extends Throwable>
R`
`accept(Visitor.LvalueVisitor<R,EX> visitor)`
Invokes the "`visit...()`" method of `Visitor.LvalueVisitor` for the concrete `Java.Lvalue` type.
`Java.Lvalue`
`toLvalue()`
`Java.Rvalue`
`toRvalue()`
`String`
`toString()`
`Java.Type`
`toType()`

### Methods inherited from class org.codehaus.janino.Java.Lvalue

`accept`

### Methods inherited from class org.codehaus.janino.Java.Rvalue

`accept, accept, accept, getEnclosingScope, getEnclosingScopeOrNull, setEnclosingScope`

### Methods inherited from class org.codehaus.janino.Java.Atom

`toLvalueOrCompileException, toRvalueOrCompileException, toTypeOrCompileException`

### Methods inherited from class org.codehaus.janino.Java.Located

`getLocation, throwCompileException`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface org.codehaus.janino.Java.Locatable

`getLocation, throwCompileException`

## Field Details

### identifiers

public final String[] identifiers
The first `n` of these identifiers comprise this ambiguous name.

### n

public final int n

See Also:
  - `identifiers`

## Constructor Details

### AmbiguousName

public AmbiguousName(Location location, String[] identifiers)

### AmbiguousName

public AmbiguousName(Location location, String[] identifiers, int n)

## Method Details

### toType

public Java.Type toType()

Overrides:
  `toType` in class `Java.Atom`
Returns:
  This atom, converted to `Java.Type`, or `null` if this atom is not a type

### toString

public String toString()

Specified by:
  `toString` in class `Java.Atom`

### toLvalue

@Nullable public Java.Lvalue toLvalue()

Overrides:
  `toLvalue` in class `Java.Lvalue`
Returns:
  This atom, converted to `Java.Lvalue`, or `null` if this atom is not an lvalue

### toRvalue

@Nullable public Java.Rvalue toRvalue()

Overrides:
  `toRvalue` in class `Java.Rvalue`
Returns:
  This atom, converted to `Java.Rvalue`, or `null` if this atom is not an rvalue

### accept

@Nullable public <R, EX extends Throwable> R accept(Visitor.LvalueVisitor<R,EX> visitor) throws EX
Description copied from class: `Java.Lvalue`
Invokes the "`visit...()`" method of `Visitor.LvalueVisitor` for the concrete `Java.Lvalue` type.

Specified by:
  `accept` in class `Java.Lvalue`
Throws:
  `EX`