21#include "storage/field/field_meta.h"
22#include "storage/index/index_meta.h"
23#include "common/lang/serializable.h"
39 RC init(int32_t table_id,
const char *name,
int field_num,
const AttrInfoSqlNode attributes[]);
44 int32_t table_id()
const {
return table_id_; }
45 const char *name()
const;
48 const FieldMeta *field(
const char *name)
const;
49 const FieldMeta *find_field_by_offset(
int offset)
const;
50 const std::vector<FieldMeta> *field_metas()
const
54 auto trx_fields()
const ->
const std::pair<const FieldMeta *, int>;
56 int field_num()
const;
57 int sys_field_num()
const;
59 const IndexMeta *index(
const char *name)
const;
60 const IndexMeta *find_index_by_field(
const char *field)
const;
62 int index_num()
const;
64 int record_size()
const;
67 int serialize(std::ostream &os)
const override;
68 int deserialize(std::istream &is)
override;
69 int get_serial_size()
const override;
70 void to_string(std::string &output)
const override;
71 void desc(std::ostream &os)
const;
74 int32_t table_id_ = -1;
76 std::vector<FieldMeta> fields_;
77 std::vector<IndexMeta> indexes_;
描述一个属性
Definition: parse_defs.h:149