org.kiama.example.picojava

ErrorCheck

object ErrorCheck extends AnyRef

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. ErrorCheck
  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 collectErrors : (Buffer[String]) ⇒ (Attributable) ⇒ Unit

    Collect the errors for a node recursively.

    Collect the errors for a node recursively.

    public void ASTNode.collectErrors(Collection c) { for(int i = 0; i < getNumChild(); i++) getChild(i).collectErrors(c); }

    public void AssignStmt.collectErrors(Collection c) { super.collectErrors(c); if(!getValue().type().isSubtypeOf(getVariable().type())) error(c, "Can not assign a variable of type " + getVariable().type().getName() + " to a value of type " + getValue().type().getName()); }

    public void ClassDecl.collectErrors(Collection c) { super.collectErrors(c); if(hasCycleOnSuperclassChain()) error(c, "Cyclic inheritance chain for class " + getName()); }

    public void WhileStmt.collectErrors(Collection c) { super.collectErrors(c); if(!getCondition().type().isSubtypeOf(booleanType())) error(c, "Condition must be a boolean expression"); if(!getCondition().isValue()) error(c, "Condition must be a value"); }

    public void IdnUse.collectErrors(Collection c) { super.collectErrors(c); if(decl().isUnknown() && (!isQualified() || !qualifier().type().isUnknown())) error(c, "Unknown identifier " + getName()); }

  9. def eq (arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  11. val errors : (Program) ⇒ Seq[String]

    All of the error messages for a program.

    All of the error messages for a program.

    public Collection Program.errors() { Collection c = new ArrayList(); collectErrors(c); return c; }

  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 isQualified : (IdnUse) ⇒ Boolean

    Is this entity qualified?

    Is this entity qualified?

    eq Program.getBlock().isQualified() = false; eq Program.getPredefinedType(int i).isQualified() = false; eq Dot.getIdnUse().isQualified() = true; inh boolean IdnUse.isQualified(); inh boolean TypeDecl.isQualified();

  17. def ne (arg0: AnyRef): Boolean

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

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

    Attributes
    final
    Definition Classes
    AnyRef
  20. val qualifier : (IdnUse) ⇒ Access

    What is the qualifier?

    What is the qualifier?

    eq Program.getBlock().qualifier() { throw new Error("Can not compute qualifier for non qualified names"); } eq Program.getPredefinedType(int i).qualifier() { throw new Error("Can not compute qualifier for non qualified names"); } eq Dot.getIdnUse().qualifier() = getObjectReference(); inh Access IdnUse.qualifier(); inh Access TypeDecl.qualifier();

  21. val record : (Buffer[String], String) ⇒ (ASTNode) ⇒ Unit

    Record a new error in the collection.

    Record a new error in the collection.

    protected void ASTNode.error(Collection c, String s) { //c.add(getLine(getStart()) + ": " + s); c.add(s); }

  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