🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
ast::Struct类 参考

#include <Struct.hpp>

+ 类 ast::Struct 继承关系图:

Public 类型

using PropertyMap = std::unordered_map<std::string, Property*>
 
using PropertyList = std::vector<Property*>
 

Public 成员函数

const std::string & getName () const final
 
void setName (StringView name) final
 
const std::string & desc () const
 
void setDesc (StringView desc)
 
PropertyaddProperty (StringView name, Property *property)
 
PropertyaddProperty (Property *property)
 
PropertygetProperty (StringView name)
 
const PropertyList & getProperties () const
 
std::string getModuleName () const
 
- Public 成员函数 继承自 ast::Object
 Object (Object *parentScope)
 
 Object (std::nullptr_t)
 
 Object (initial_strong_ref_t)
 
virtual ClassgetType () const
 
virtual std::string getRepresentation () const
 
const std::string & name () const
 
errc_t showEditDialog ()
 
Attribute attr (StringView path)
 
errc_t getAttrBool (StringView path, bool &value) const
 
errc_t getAttrInt (StringView path, int &value) const
 
errc_t getAttrDouble (StringView path, double &value) const
 
errc_t getAttrString (StringView path, std::string &value) const
 
errc_t getAttrObject (StringView path, Object *&value) const
 
double getAttrDouble (StringView path) const
 
int getAttrInt (StringView path) const
 
bool getAttrBool (StringView path) const
 
std::string getAttrString (StringView path) const
 
ObjectgetAttrObject (StringView path) const
 
errc_t setAttrBool (StringView path, bool value)
 
errc_t setAttrInt (StringView path, int value)
 
errc_t setAttrDouble (StringView path, double value)
 
errc_t setAttrString (StringView path, StringView value)
 
errc_t setAttrObject (StringView path, Object *value)
 
Classtype () const
 
const std::string & typeName () const
 
PropertygetProperty (StringView fieldName) const
 
ObjectId getID () const
 
errc_t setParentScope (Object *parentScope)
 
ObjectgetParentScope () const
 
bool isOfType (const Class *type) const
 
bool isOfType (StringView typeName) const
 
template<typename T >
bool isOfType () const
 
uint32_t refCount () const
 
uint32_t weakRefCount () const
 
bool isDestructed () const
 
void destruct ()
 
uint32_t incWeakRef ()
 
uint32_t decWeakRef ()
 
uint32_t incRef ()
 
uint32_t decRef ()
 
uint32_t decRefNoDelete ()
 
template<typename Func >
void addDelayedLink (Func &&link)
 
template<typename Func >
void addDelayedLinkIfFailed (Func &&link)
 
void resolveLinks ()
 

Protected 属性

std::string name_
 
std::string desc_
 
PropertyList properties_
 
PropertyMap propertyMap_
 

额外继承的成员函数

- 静态 Public 成员函数 继承自 ast::Object
static ObjectResolve (StringView value)
 
static void ClassInit (Class *cls)
 
static ClassStaticType ()
 
- 静态 Public 属性 继承自 ast::Object
static Class staticType
 
- Protected 成员函数 继承自 ast::Object
 Object (const Object &obj)
 
Objectoperator= (const Object &)
 

详细描述

结构体类

结构体类,包含属性的名称、描述等信息

成员函数说明

◆ addProperty() [1/2]

Property * ast::Struct::addProperty ( Property * property)

添加属性

参数
property属性
返回
Property* 属性指针

◆ addProperty() [2/2]

Property * ast::Struct::addProperty ( StringView name,
Property * property )

添加属性

参数
name属性名
property属性
返回
Property* 属性指针

◆ getModuleName()

std::string ast::Struct::getModuleName ( ) const

获取模块名, 不包含调试后缀

返回
std::string 模块名

◆ getName()

const std::string & ast::Struct::getName ( ) const
inlinefinalvirtual

获取字段名称

重载 ast::Object .

◆ getProperties()

const PropertyList & ast::Struct::getProperties ( ) const
inline

获取属性列表

返回
const PropertyList& 属性列表

◆ getProperty()

Property * ast::Struct::getProperty ( StringView name)

获取属性

参数
name属性名
返回
Property* 属性指针

◆ setDesc()

void ast::Struct::setDesc ( StringView desc)
inline

设置字段描述

参数
desc字段描述

◆ setName()

void ast::Struct::setName ( StringView name)
inlinefinalvirtual

设置字段名称

参数
name字段名称

实现了 ast::Object.


该类的文档由以下文件生成: