|
Porytiles
|
The raw facts a project exposes about its metatile attribute layout. More...
#include <metatile_attribute_inference.hpp>
Public Attributes | |
| std::vector< InferenceEnumMember > | enum_members |
| all enum members from the fieldmap header, in declaration order | |
| std::vector< InferenceDefine > | defines |
| all integer defines from the fieldmap header | |
| std::unordered_set< std::string > | ambiguous_defines |
| mask defines with conflicting values in an undecidable conditional branch | |
| std::vector< InferenceArrayEntry > | masks_array |
| entries of the exact-name sMetatileAttrMasks table (may be empty) | |
| std::vector< InferenceArrayEntry > | shifts_array |
| entries of the exact-name sMetatileAttrShifts table (may be empty) | |
| BehaviorsHeaderScan | behaviors_header |
| the behavior constants header, or why there is none | |
| AttributeDeclarationScan | declaration |
| struct Tileset's metatileAttributes declaration, or why there is none | |
| std::string | header_source |
| path of the fieldmap header the defines, enum members, and struct came from | |
| std::string | masks_table_source |
| path of the file the mask table came from, empty when no table was read | |
| std::vector< std::string > | unreadable_sources |
| files that exist but could not be read, so whatever they declare is missing above | |
The raw facts a project exposes about its metatile attribute layout.
This is the pure, I/O-free input to infer_metatile_attribute_candidates. The infra-layer scanner gathers these facts from the project's headers and source, then hands them to inference. Inference never reads files; every decision follows from this struct.
Definition at line 112 of file metatile_attribute_inference.hpp.
| std::unordered_set<std::string> porytiles::MetatileAttributeScan::ambiguous_defines |
mask defines with conflicting values in an undecidable conditional branch
Definition at line 116 of file metatile_attribute_inference.hpp.
| BehaviorsHeaderScan porytiles::MetatileAttributeScan::behaviors_header |
the behavior constants header, or why there is none
Definition at line 120 of file metatile_attribute_inference.hpp.
| AttributeDeclarationScan porytiles::MetatileAttributeScan::declaration |
struct Tileset's metatileAttributes declaration, or why there is none
Definition at line 121 of file metatile_attribute_inference.hpp.
| std::vector<InferenceDefine> porytiles::MetatileAttributeScan::defines |
all integer defines from the fieldmap header
Definition at line 114 of file metatile_attribute_inference.hpp.
| std::vector<InferenceEnumMember> porytiles::MetatileAttributeScan::enum_members |
all enum members from the fieldmap header, in declaration order
Definition at line 113 of file metatile_attribute_inference.hpp.
| std::string porytiles::MetatileAttributeScan::header_source |
path of the fieldmap header the defines, enum members, and struct came from
Definition at line 122 of file metatile_attribute_inference.hpp.
| std::vector<InferenceArrayEntry> porytiles::MetatileAttributeScan::masks_array |
entries of the exact-name sMetatileAttrMasks table (may be empty)
Definition at line 117 of file metatile_attribute_inference.hpp.
| std::string porytiles::MetatileAttributeScan::masks_table_source |
path of the file the mask table came from, empty when no table was read
Definition at line 123 of file metatile_attribute_inference.hpp.
| std::vector<InferenceArrayEntry> porytiles::MetatileAttributeScan::shifts_array |
entries of the exact-name sMetatileAttrShifts table (may be empty)
Definition at line 119 of file metatile_attribute_inference.hpp.
| std::vector<std::string> porytiles::MetatileAttributeScan::unreadable_sources |
files that exist but could not be read, so whatever they declare is missing above
Definition at line 125 of file metatile_attribute_inference.hpp.