#include "nusmv/core/compile/symb_table/SymbType.h"
#include "nusmv/core/utils/utils.h"
Go to the source code of this file.
Functions | |
SymbType_ptr | tc_lookup_expr_type (TypeChecker_ptr self, node_ptr expression) |
Looks up the internal type memoizing for expression's type and returns the associated type, or nullType if the expression was not previously checked. | |
SymbType_ptr | tc_set_expression_type (TypeChecker_ptr self, node_ptr expression, SymbType_ptr type) |
Private interface of class 'TypeChecker'. |
SymbType_ptr tc_lookup_expr_type | ( | TypeChecker_ptr | self, | |
node_ptr | expression | |||
) |
Looks up the internal type memoizing for expression's type and returns the associated type, or nullType if the expression was not previously checked.
If memoizing is not enabled, nullType will always be returned
SymbType_ptr tc_set_expression_type | ( | TypeChecker_ptr | self, | |
node_ptr | expression, | |||
SymbType_ptr | type | |||
) |
Private interface of class 'TypeChecker'.
Creates the association between an expression and its type, if memoizing is enabled There should be not existing associated type for a given expression.
Note: if there is (not null) context then the expression must be wrapped into CONTEXT expression. For example, for an expression exp and not null context ctx, the expression provided for this function should be find_node(nodemgr, CONTEXT, ctx, exp). The expression should not be wrapped into Nil context.