#include <set>#include <string>#include <ostream>#include <boost/filesystem/path.hpp>#include <libsherpa/LexLoc.hxx>#include "Environment.hxx"#include "AST.hxx"#include "TypeScheme.hxx"#include "Symtab.hxx"#include "TypeInfer.hxx"#include "WorkList.hxx"#include "pass.def"#include "onepass.def"Go to the source code of this file.
Data Structures | |
| struct | PassInfo |
| struct | OnePassInfo |
| class | UocInfo |
Defines | |
| #define | PASS(nm, short, descrip) pn_##nm, |
| #define | ONEPASS(nm, short, descrip) op_##nm, |
| #define | PASS(nm, short, descrip) |
| #define | ONEPASS(nm, short, descrip) |
| #define | PI_SYM_FLAGS (RSLV_NO_RESOLVE_DECL) |
| #define | PI_TYP_FLAGS (TI_ALL_INSTS_OK) |
| #define | OP_SYM_FLAGS (PI_SYM_FLAGS | RSLV_SYM_NO_PRELUDE) |
| #define | OP_TYP_FLAGS (PI_TYP_FLAGS | TI_NO_PRELUDE) |
| #define | POLY_SYM_FLAGS (OP_SYM_FLAGS) |
| #define | POLY_TYP_FLAGS |
| #define | REF_SYM_FLAGS (POLY_SYM_FLAGS | RSLV_INCOMPLETE_NO_CHK) |
| #define | REF_TYP_FLAGS (POLY_TYP_FLAGS) |
| #define | CL_SYM_FLAGS (REF_SYM_FLAGS) |
| #define | CL_TYP_FLAGS (REF_TYP_FLAGS) |
| #define | PASS(nm, short, descrip) pn_##nm, |
| #define | ONEPASS(nm, short, descrip) op_##nm, |
| #define | PASS(nm, short, descrip) |
| #define | ONEPASS(nm, short, descrip) |
| #define | PI_SYM_FLAGS (RSLV_NO_RESOLVE_DECL) |
| #define | PI_TYP_FLAGS (TI_ALL_INSTS_OK) |
| #define | OP_SYM_FLAGS (PI_SYM_FLAGS | RSLV_SYM_NO_PRELUDE) |
| #define | OP_TYP_FLAGS (PI_TYP_FLAGS | TI_NO_PRELUDE) |
| #define | POLY_SYM_FLAGS (OP_SYM_FLAGS) |
| #define | POLY_TYP_FLAGS |
| #define | REF_SYM_FLAGS (POLY_SYM_FLAGS | RSLV_INCOMPLETE_NO_CHK) |
| #define | REF_TYP_FLAGS (POLY_TYP_FLAGS) |
| #define | CL_SYM_FLAGS (REF_SYM_FLAGS) |
| #define | CL_TYP_FLAGS (REF_TYP_FLAGS) |
Typedefs | |
| typedef sherpa::EnumSet< UocFlagValues > | UocFlags |
| typedef std::map< std::string, boost::shared_ptr< UocInfo > > | UocMap |
Enumerations | |
| enum | UocFlagValues { UOC_NO_FLAGS = 0, UOC_IS_PRELUDE = 0x1u, UOC_IS_MUTABLE = 0x2u, UOC_SEEN_BY_INST = 0x4u } |
| enum | Pass { nm, nm, short, short, descrip, descrip } |
| enum | OnePass { nm, nm, short, short, descrip, descrip } |
| #define CL_SYM_FLAGS (REF_SYM_FLAGS) |
Definition at line 388 of file UocInfo.hxx.
| #define CL_SYM_FLAGS (REF_SYM_FLAGS) |
Definition at line 388 of file UocInfo.hxx.
| #define CL_TYP_FLAGS (REF_TYP_FLAGS) |
Definition at line 389 of file UocInfo.hxx.
| #define CL_TYP_FLAGS (REF_TYP_FLAGS) |
Definition at line 389 of file UocInfo.hxx.
| #define ONEPASS | ( | nm, | |||
| short, | |||||
| descrip | ) |
Value:
Definition at line 293 of file UocInfo.hxx.
| #define ONEPASS | ( | nm, | |||
| short, | |||||
| descrip | ) | op_##nm, |
Definition at line 293 of file UocInfo.hxx.
| #define ONEPASS | ( | nm, | |||
| short, | |||||
| descrip | ) |
Value:
Definition at line 293 of file UocInfo.hxx.
| #define ONEPASS | ( | nm, | |||
| short, | |||||
| descrip | ) | op_##nm, |
Definition at line 293 of file UocInfo.hxx.
| #define OP_SYM_FLAGS (PI_SYM_FLAGS | RSLV_SYM_NO_PRELUDE) |
Definition at line 375 of file UocInfo.hxx.
| #define OP_SYM_FLAGS (PI_SYM_FLAGS | RSLV_SYM_NO_PRELUDE) |
| #define OP_TYP_FLAGS (PI_TYP_FLAGS | TI_NO_PRELUDE) |
Definition at line 376 of file UocInfo.hxx.
| #define OP_TYP_FLAGS (PI_TYP_FLAGS | TI_NO_PRELUDE) |
| #define PASS | ( | nm, | |||
| short, | |||||
| descrip | ) |
Value:
Definition at line 196 of file UocInfo.hxx.
| #define PASS | ( | nm, | |||
| short, | |||||
| descrip | ) | pn_##nm, |
Definition at line 196 of file UocInfo.hxx.
| #define PASS | ( | nm, | |||
| short, | |||||
| descrip | ) |
Value:
Definition at line 196 of file UocInfo.hxx.
| #define PASS | ( | nm, | |||
| short, | |||||
| descrip | ) | pn_##nm, |
Definition at line 196 of file UocInfo.hxx.
| #define PI_SYM_FLAGS (RSLV_NO_RESOLVE_DECL) |
Definition at line 371 of file UocInfo.hxx.
| #define PI_SYM_FLAGS (RSLV_NO_RESOLVE_DECL) |
Definition at line 371 of file UocInfo.hxx.
| #define PI_TYP_FLAGS (TI_ALL_INSTS_OK) |
Definition at line 372 of file UocInfo.hxx.
| #define PI_TYP_FLAGS (TI_ALL_INSTS_OK) |
Definition at line 372 of file UocInfo.hxx.
| #define POLY_SYM_FLAGS (OP_SYM_FLAGS) |
Definition at line 379 of file UocInfo.hxx.
| #define POLY_SYM_FLAGS (OP_SYM_FLAGS) |
| #define POLY_TYP_FLAGS |
Value:
Definition at line 380 of file UocInfo.hxx.
| #define POLY_TYP_FLAGS |
| #define REF_SYM_FLAGS (POLY_SYM_FLAGS | RSLV_INCOMPLETE_NO_CHK) |
Definition at line 384 of file UocInfo.hxx.
| #define REF_SYM_FLAGS (POLY_SYM_FLAGS | RSLV_INCOMPLETE_NO_CHK) |
Definition at line 384 of file UocInfo.hxx.
| #define REF_TYP_FLAGS (POLY_TYP_FLAGS) |
Definition at line 385 of file UocInfo.hxx.
| #define REF_TYP_FLAGS (POLY_TYP_FLAGS) |
Definition at line 385 of file UocInfo.hxx.
| typedef sherpa::EnumSet<UocFlagValues> UocFlags |
Definition at line 74 of file UocInfo.hxx.
Definition at line 113 of file UocInfo.hxx.
| enum OnePass |
| enum Pass |
| enum UocFlagValues |
| UOC_NO_FLAGS | |
| UOC_IS_PRELUDE |
Indicates that this UOC is the prelude UOC.
This does not appear to be consulted anywhere. |
| UOC_IS_MUTABLE |
Indicates that definitions in this UOC may be changed.
This is (in theory) used in the instantiator.
|
| UOC_SEEN_BY_INST | Indicates that this UOC has been visited by the instantiator. |
Definition at line 55 of file UocInfo.hxx.
1.4.7