2 #include "classdef-table-view.h" 8 inline ClassdefTableView::ClassdefTableView(ClassdefTable& table)
13 inline ClassdefTableView::ClassdefTableView(ClassdefTableView& view)
14 : ClassdefTableView(view.table) {
18 inline ClassdefTableView::ClassdefTableView(ClassdefTableView& view, uint32_t atomid, uint count)
19 : ClassdefTableView(view.table) {
21 previous.atomid = atomid;
26 previous.flags.reserve(count + 2);
27 previous.storage.reserve((count + 2) * 2);
29 previous.swap(table.m_layer);
34 inline ClassdefTableView::~ClassdefTableView() {
36 table.m_layer.swap(previous);
45 inline const Classdef& ClassdefTableView::classdefFollowClassMember(
const CLID& clid)
const {
49 inline bool ClassdefTableView::hasClassdef(
const CLID& clid)
const {
54 inline Atom* ClassdefTableView::findClassdefAtom(
const Classdef& cdef)
const {
58 inline Atom* ClassdefTableView::findRawClassdefAtom(
const Classdef& cdef)
const {
63 inline const Classdef& ClassdefTableView::classdef(
const CLID& clid)
const {
68 inline const Classdef& ClassdefTableView::rawclassdef(
const CLID& clid)
const {
99 inline const AtomMap& ClassdefTableView::atoms()
const {
103 inline AtomMap& ClassdefTableView::atoms() {
Atom * findRawClassdefAtom(const Classdef &) const
Find the atom of a classdef, via its extends if necessary.
Definition: classdef-table.cpp:186
const Classdef & rawclassdef(const CLID &) const
Retrieve a classdef from its ID without using the current layer.
Definition: classdef-table.cpp:69
Class definition.
Definition: classdef.h:24
AtomMap atoms
Atom map.
Definition: classdef-table.h:155
Definition: classdef-table.h:19
Atom * findClassdefAtom(const Classdef &) const
Find the atom of a classdef, via its extends if necessary.
Definition: classdef-table.cpp:204
Classdef & addSubstitute(nytype_t kind, Atom *atom, const Qualifiers &qualifiers)
Append a new substitute.
Definition: classdef-table-view.hxx:84
void substituteResize(uint32_t count)
Resize the substitutes for the current layer.
Definition: classdef-table.cpp:233
bool hasSubstitute(CLID) const
Get if the current layer has a substitute for a given CLID.
Definition: classdef-table.cpp:222
Atoms.
Definition: atom-map.h:17
bool hasClassdef(const CLID &) const
Get if a clid is available.
Definition: classdef-table.hxx:16
Definition of a single class or function.
Definition: atom.h:37
const Classdef & classdefFollowClassMember(const CLID &) const
Retrieve the real classdef from its ID (or from the current layer) even if a class member...
Definition: classdef-table.cpp:118
AnyString keyword(const Atom &) const
Get the keyword associated to an atom (class, func, var, cref, namespace...)
Definition: classdef-table.cpp:306
uint32_t substituteAtomID() const
Get the atom id of the current layer.
Definition: classdef-table.hxx:46
uint32_t substituteAtomID() const
Get the atom id of the current layer.
Definition: classdef-table-view.hxx:89
void substituteResize(uint count)
Resize the substitutes for the current layer.
Definition: classdef-table-view.hxx:94
Classdef & substitute(uint32_t)
Create a new substiture in the current layer.
Definition: classdef-table-view.hxx:78
AnyString keyword(const Atom &) const
Get the keyword associated to an atom (class, func, var, cref, namespace...)
Definition: classdef-table-view.hxx:40
Classdef & substitute(uint32_t) const
Get the substiture for the current atomid in the current layer.
Definition: classdef-table.cpp:268
bool hasSubstitute(const CLID &) const
Get if the current view has a substitute for a given CLID.
Definition: classdef-table-view.hxx:73
Definition: qualifiers.h:9
Classdef & addSubstitute(nytype_t kind, Atom *atom, const Qualifiers &) const
Append a new substitute.
Definition: classdef-table.cpp:285
Classdef & classdef(const CLID &)
Retrieve or create a classdef from its ID.
Definition: classdef-table.cpp:45
const ClassdefTable & originalTable() const
The original table (const)
Definition: classdef-table-view.hxx:113