MCPcopy Create free account
hub / github.com/GaijinEntertainment/daScript / Module_Rtti

Method Module_Rtti

src/builtin/module_builtin_rtti.cpp:1680–1997  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1678 initRecAnnotation(rec, lib);
1679 }
1680 Module_Rtti() : Module("rtti_core") {
1681 DAS_PROFILE_SECTION("Module_Rtti");
1682 ModuleLibrary lib(this);
1683 lib.addBuiltInModule();
1684 // flags
1685 addAlias(makeProgramFlags());
1686 addAlias(makeContextCategoryFlags());
1687 addAlias(makeTypeInfoFlags());
1688 addAlias(makeStructInfoFlags());
1689 addAlias(makeModuleFlags());
1690 addAlias(makeAnnotationDeclarationFlags());
1691 addAlias(makeSimFunctionFlags());
1692 addAlias(makeLocalVariableInfoFlagsFlags());
1693 // CodeOfPolicies
1694 addAnnotation(new CodeOfPoliciesAnnotation(lib));
1695 addCtorAndUsing<CodeOfPolicies>(*this,lib,"CodeOfPolicies","CodeOfPolicies");
1696 // enums
1697 addEnumeration(new EnumerationCompilationError());
1698 // type annotations
1699 addAnnotation(new FileInfoAnnotation(lib));
1700 addAnnotation(new LineInfoAnnotation(lib));
1701 addCtor<LineInfo>(*this,lib,"LineInfo","LineInfo");
1702 addCtor<LineInfo,FileInfo *,int,int,int,int>(*this,lib,"LineInfo","LineInfo");
1703 addAnnotation(new DummyTypeAnnotation("recursive_mutex","recursive_mutex",sizeof(recursive_mutex),alignof(recursive_mutex)));
1704 addUsing<recursive_mutex>(*this, lib, "das::recursive_mutex");
1705 addAnnotation(new ContextAnnotation(lib));
1706 addAnnotation(new ErrorAnnotation(lib));
1707 addAnnotation(new FileAccessAnnotation(lib));
1708 addAnnotation(new ModuleAnnotation(lib));
1709 addAnnotation(new AstModuleGroupAnnotation(lib));
1710 addAnnotation(new AstSerializerAnnotation(lib));
1711 addEnumeration(new EnumerationType());
1712 addAnnotation(new AnnotationArgumentAnnotation(lib));
1713 addVectorAnnotation<AnnotationArguments>(this,lib,"AnnotationArguments");
1714 addVectorAnnotation<AnnotationArgumentList>(this,lib,"AnnotationArgumentList");
1715 addAnnotation(new ProgramAnnotation(lib));
1716 addAnnotation(new AnnotationAnnotation(lib));
1717 addAnnotation(new AnnotationDeclarationAnnotation(lib));
1718 addVectorAnnotation<AnnotationList>(this,lib,"AnnotationList");
1719 addAnnotation(new TypeAnnotationAnnotation(lib));
1720 addAnnotation(new BasicStructureAnnotationAnnotation(lib));
1721 addAnnotation(new EnumValueInfoAnnotation(lib));
1722 addAnnotation(new EnumInfoAnnotation(lib));
1723 addEnumeration(new EnumerationRefMatters());
1724 addEnumeration(new EnumerationConstMatters());
1725 addEnumeration(new EnumerationTemporaryMatters());
1726 auto sia = new StructInfoAnnotation(lib); // this is type forward decl
1727 addAnnotation(sia);
1728 addRecAnnotation<TypeInfoAnnotation>(lib);
1729 addRecAnnotation<VarInfoAnnotation>(lib);
1730 addRecAnnotation<LocalVariableInfoAnnotation>(lib);
1731 initRecAnnotation(sia, lib);
1732 addAnnotation(new FuncInfoAnnotation(lib));
1733 addAnnotation(new SimFunctionAnnotation(lib));
1734 // DebugInfoHelper
1735 addAnnotation(new DebugInfoHelperAnnotation(lib));
1736 // RttiValue
1737 addAlias(typeFactory<RttiValue>::make(lib));

Callers

nothing calls this directly

Calls 12

makeProgramFlagsFunction · 0.85
makeContextCategoryFlagsFunction · 0.85
makeTypeInfoFlagsFunction · 0.85
makeStructInfoFlagsFunction · 0.85
makeModuleFlagsFunction · 0.85
makeSimFunctionFlagsFunction · 0.85
initRecAnnotationFunction · 0.85
addBuiltInModuleMethod · 0.80
argsMethod · 0.45
argMethod · 0.45

Tested by

no test coverage detected