This commit is contained in:
2023-12-09 07:25:48 +03:00
parent 7efdacc979
commit c8350d2f0a

View File

@@ -66,7 +66,7 @@ pip_code_model(<out_var> file0 [file1 ...] [OPTIONS opt0 [opt1 ...] ] [NAME name
## Метаинформация ## Метаинформация
Метаинформация - это текстовое представление всех членов и методов структуры или класса C++. Метаинформация - это текстовое представление всех членов и методов структуры или класса C++.
Для доступа к ним используется PICodeInfo::classesInfo->value("name"), который возвращает Для доступа к ним используется PICODEINFO::classes().value("name"), который возвращает
указатель на структуру PICodeInfo::ClassInfo, содержащую всю информацию о сущности. указатель на структуру PICodeInfo::ClassInfo, содержащую всю информацию о сущности.
В любой структуре PICodeInfo есть поле "MetaMap meta", содержащее произвольные В любой структуре PICodeInfo есть поле "MetaMap meta", содержащее произвольные
@@ -90,7 +90,7 @@ enum FOV { // Поле зрения
## Перечисления ## Перечисления
Перечисления записываются отдельно, для доступа к ним используется PICodeInfo::enumsInfo->value("name"), Перечисления записываются отдельно, для доступа к ним используется PICODEINFO::enums().value("name"),
который возвращает указатель на структуру PICodeInfo::EnumInfo, содержащую всю информацию о перечеслении. который возвращает указатель на структуру PICodeInfo::EnumInfo, содержащую всю информацию о перечеслении.
## Операторы де/сериализации ## Операторы де/сериализации
@@ -290,7 +290,7 @@ C++:
... ...
PICodeInfo::EnumInfo * ei = PICodeInfo::enumsInfo->value("MyEnum", 0); PICodeInfo::EnumInfo * ei = PICODEINFO::enums().value("MyEnum", 0);
if (ei) { if (ei) {
ei->members.forEach([](const PICodeInfo::EnumeratorInfo & e){piCout << e.name << "=" << e.value;}); ei->members.forEach([](const PICodeInfo::EnumeratorInfo & e){piCout << e.name << "=" << e.value;});
} }