deimos-lang/dmc-lib/src/error_codes.rs

28 lines
1.2 KiB
Rust

pub type ErrorCode = usize;
pub const LEXER_ERROR: ErrorCode = 1;
pub const PARSE_ERROR: ErrorCode = 2;
pub const SYMBOL_NOT_FOUND: ErrorCode = 13;
pub const SYMBOL_ALREADY_DECLARED: ErrorCode = 14;
pub const BINARY_INCOMPATIBLE_TYPES: ErrorCode = 15;
pub const ASSIGN_MISMATCHED_TYPES: ErrorCode = 16;
pub const ASSIGN_NO_L_VALUE: ErrorCode = 17;
pub const ASSIGN_LHS_IMMUTABLE: ErrorCode = 18;
pub const INCORRECT_GENERIC_ARGUMENTS: ErrorCode = 19;
pub const GENERIC_ARGUMENT_TYPE_MISMATCH: ErrorCode = 20;
pub const FIELD_MULTIPLE_INIT: ErrorCode = 21;
pub const FIELD_UNINIT: ErrorCode = 22;
pub const SELF_FIELD_USED_IN_INIT: ErrorCode = 23;
pub const SELF_METHOD_USED_IN_INIT: ErrorCode = 24;
pub const SELF_CONSTRUCTOR_USED_IN_INIT: ErrorCode = 25;
pub const OUTER_CLASS_FIELD_USED_IN_INIT: ErrorCode = 26;
pub const OUTER_CLASS_METHOD_USED_IN_INIT: ErrorCode = 27;
pub const FIELD_NO_TYPE_OR_INIT: ErrorCode = 28;
pub const CLASS_NO_CONSTRUCTOR: ErrorCode = 29;
pub const NOT_ASSIGNABLE: ErrorCode = 30;
pub const CANNOT_PROVIDE_GENERIC_ARGS_GENERIC_TYPE: ErrorCode = 31;
pub const RECEIVER_NOT_CALLABLE: ErrorCode = 32;
pub const WRONG_NUMBER_OF_ARGUMENTS: ErrorCode = 33;
pub const MISMATCHED_TYPES: ErrorCode = 34;
pub const UNARY_INCOMPATIBLE_TYPE: ErrorCode = 35;