MCPcopy Create free account
hub / github.com/NanoMichael/MicroTeX / CumulativeScriptsAtom

Method CumulativeScriptsAtom

src/atom/atom_basic.cpp:51–72  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

49}
50
51CumulativeScriptsAtom::CumulativeScriptsAtom(
52 const sptr<Atom>& base, const sptr<Atom>& sub, const sptr<Atom>& sup) {
53 CumulativeScriptsAtom* ca = dynamic_cast<CumulativeScriptsAtom*>(base.get());
54 ScriptsAtom* sa = nullptr;
55 if (ca != nullptr) {
56 _base = ca->_base;
57 ca->_sup->add(sup);
58 ca->_sub->add(sub);
59 _sup = ca->_sup;
60 _sub = ca->_sub;
61 } else if (sa = dynamic_cast<ScriptsAtom*>(base.get())) {
62 _base = sa->_base;
63 _sup = sptr<RowAtom>(new RowAtom(sa->_sup));
64 _sub = sptr<RowAtom>(new RowAtom(sa->_sub));
65 _sup->add(sup);
66 _sub->add(sub);
67 } else {
68 _base = base;
69 _sup = sptr<RowAtom>(new RowAtom(sup));
70 _sub = sptr<RowAtom>(new RowAtom(sub));
71 }
72}
73
74void CumulativeScriptsAtom::addSuperscript(const sptr<Atom>& sup) {
75 _sup->add(sup);

Callers

nothing calls this directly

Calls 2

getMethod · 0.45
addMethod · 0.45

Tested by

no test coverage detected