Traductor e intérprete del lenguaje CL 1.23
|
Errores semánticos detectables en el TypeCheck. More...
Public Member Functions | |
int | compareTo (SemanticError error) |
Compara dos errores semánticos. | |
String | toString () |
Describe cómo debe visualizarse un error semántico. | |
Package Functions | |
SemanticError (SemErrorCodes code, CL_AST ast) | |
Constructor más habitual. | |
SemanticError (SemErrorCodes code, CL_AST ast, int n) | |
Un segundo constructor. | |
boolean | equals (SemanticError error) |
Son iguales dos errores semánticos?. | |
Private Attributes | |
int | line |
Número de línia donde se detectó el error. | |
int | charPositionInLine |
Posición dentro la línia (columna) en la que se detectó el error. | |
SemErrorCodes | errorCode |
Código de error: un valor en el tipo enumerado SemErrorCodes. | |
String | text |
Atributo adicional para describir y localizar mejor los errores. | |
int | num |
Atributo adicional para describir y localizar mejor algunos errores. |
Errores semánticos detectables en el TypeCheck.
Define los atributos de un error semántico, cómo emitir/visualizar un error, y cómo comparar dos errores de cara a ordenar, utlizando Collections.sort
, la lista de errores semánticos encontrados por el TypeCheck.
De cara poder comparar dos errores semánticos SemanticError implementa la interficie Comparable<T>
, definiendo el método compareTo
y obteniendo un orden total para los errores.
Definition at line 85 of file SemanticErrors.java.
SemanticError.SemanticError | ( | SemErrorCodes | code, |
CL_AST | ast | ||
) | [package] |
Constructor más habitual.
[in] | code | código que identifica el error |
[in] | ast | nodo del AST que aporta información del error |
Definition at line 120 of file SemanticErrors.java.
SemanticError.SemanticError | ( | SemErrorCodes | code, |
CL_AST | ast, | ||
int | n | ||
) | [package] |
Un segundo constructor.
[in] | code | código que identifica el error |
[in] | ast | nodo del AST que aporta información del error |
[in] | n | usado para establecer el atributo num |
Definition at line 133 of file SemanticErrors.java.
int SemanticError.compareTo | ( | SemanticError | error | ) |
Compara dos errores semánticos.
En primer lugar compara las localizaciones (línea y columna) y luego los códigos. De esta forma los errores pueden ser ordenados básicamente en orden de aparición
[in] | error | el error con el que es comparado el parámetro implícito |
Definition at line 150 of file SemanticErrors.java.
boolean SemanticError.equals | ( | SemanticError | error | ) | [package] |
Son iguales dos errores semánticos?.
Deben ser iguales tanto la localización (línea y columna) como el código de los errres
[in] | error | el error con el que es comparado el parámetro implícito |
Definition at line 167 of file SemanticErrors.java.
String SemanticError.toString | ( | ) |
Describe cómo debe visualizarse un error semántico.
El string comienza con la localización del error, seguido del texto que lo describe que depende del códgo de error. Algunos errores utilizan los atributos adicionales text y num para describir o localizar mejor el error.
Definition at line 182 of file SemanticErrors.java.
int SemanticError.charPositionInLine [private] |
Posición dentro la línia (columna) en la que se detectó el error.
Definition at line 94 of file SemanticErrors.java.
SemErrorCodes SemanticError.errorCode [private] |
Código de error: un valor en el tipo enumerado SemErrorCodes.
Definition at line 100 of file SemanticErrors.java.
int SemanticError.line [private] |
Número de línia donde se detectó el error.
Definition at line 89 of file SemanticErrors.java.
int SemanticError.num [private] |
Atributo adicional para describir y localizar mejor algunos errores.
Definition at line 110 of file SemanticErrors.java.
String SemanticError.text [private] |
Atributo adicional para describir y localizar mejor los errores.
Definition at line 105 of file SemanticErrors.java.