org.kiama.example.picojava

NameResolution

object NameResolution extends AnyRef

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. NameResolution
  2. AnyRef
  3. Any
Visibility
  1. Public
  2. All

Value Members

  1. def != (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  2. def != (arg0: Any): Boolean

    Attributes
    final
    Definition Classes
    Any
  3. def ## (): Int

    Attributes
    final
    Definition Classes
    AnyRef → Any
  4. def == (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  5. def == (arg0: Any): Boolean

    Attributes
    final
    Definition Classes
    Any
  6. def asInstanceOf [T0] : T0

    Attributes
    final
    Definition Classes
    Any
  7. def clone (): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  8. val decl : (Access) ⇒ Decl

    decl refers to the appropriate declaration of the Access, or to unknownDecl if the declaration is missing.

    decl refers to the appropriate declaration of the Access, or to unknownDecl if the declaration is missing.

    syn lazy Decl Access.decl(); eq IdnUse.decl() = lookup(getName()); eq Dot.decl() = getIdnUse().decl();

  9. val declarationOf : (String) ⇒ (BlockStmt) ⇒ Decl

    syn Decl BlockStmt.

    syn Decl BlockStmt.declarationOf(String name) = null; eq Decl.declarationOf(String name) { if (getName().equals(name)) return this; return null; }

  10. def eq (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  11. def equals (arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  12. def finalize (): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  13. def getClass (): java.lang.Class[_]

    Attributes
    final
    Definition Classes
    AnyRef → Any
  14. def hashCode (): Int

    Definition Classes
    AnyRef → Any
  15. def isInstanceOf [T0] : Boolean

    Attributes
    final
    Definition Classes
    Any
  16. val localLookup : (String) ⇒ (Attributable) ⇒ Decl

    Look through the local declarations in a block.

    Look through the local declarations in a block.

    syn lazy Decl Block.localLookup(String name) { for (int k = 0; k < getNumBlockStmt(); k++) { Decl d = getBlockStmt(k).declarationOf(name); if (d != null) return d; } return unknownDecl(); }

    syn lazy Decl Program.localLookup(String name) { for (int k = 0; k < getNumPredefinedType(); k++) { Decl d = getPredefinedType(k).declarationOf(name); if (d != null) return d; } return unknownDecl(); }

  17. val lookup : (String) ⇒ (Attributable) ⇒ Decl

    Lookup a name.

    Lookup a name.

    inh Decl IdnUse.lookup(String name); inh Decl Block.lookup(String name); inh Decl TypeDecl.lookup(String name);

    eq Program.getBlock().lookup(String name) = localLookup(name); // lookup predefined types

    FIXME: haven't encoded this one, needed? eq Program.getPredefinedType(int index).lookup(String name) = unknownDecl();

    eq Block.getBlockStmt(int index).lookup(String name) { // First, look in the local declarations if (!localLookup(name).isUnknown()) return localLookup(name); // Then, look in surrounding context return lookup(name); }

    eq ClassDecl.getBody().lookup(String name) { // First, look in superclass chain if (superClass() != null && !superClass().remoteLookup(name).isUnknown()) return superClass().remoteLookup(name); // Then, look in surrounding context return lookup(name); }

    eq Dot.getIdnUse().lookup(String name) = // Do a remote lookup on the object's type. getObjectReference().decl().type().remoteLookup(name);

  18. def ne (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  19. def notify (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
  20. def notifyAll (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
  21. val remoteLookup : (String) ⇒ (TypeDecl) ⇒ Decl

    Perform a remote name lookup.

    Perform a remote name lookup.

    Looks through declarations of this type that are accessible from outside the type By default, there are no such declarations, so return unknownDecl.

    syn Decl TypeDecl.remoteLookup(String name) = unknownDecl();

    eq ClassDecl.remoteLookup(String name) { // First, look in local declarations if (!getBody().localLookup(name).isUnknown()) return getBody().localLookup(name); // Then, look in the superclass chain if (superClass() != null && !superClass().remoteLookup(name).isUnknown()) return superClass().remoteLookup(name); // Otherwise, return null object unknown return unknownDecl(); }

  22. def synchronized [T0] (arg0: ⇒ T0): T0

    Attributes
    final
    Definition Classes
    AnyRef
  23. def toString (): String

    Definition Classes
    AnyRef → Any
  24. def wait (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
    Annotations
    @throws()
  25. def wait (arg0: Long, arg1: Int): Unit

    Attributes
    final
    Definition Classes
    AnyRef
    Annotations
    @throws()
  26. def wait (arg0: Long): Unit

    Attributes
    final
    Definition Classes
    AnyRef
    Annotations
    @throws()

Inherited from AnyRef

Inherited from Any