TPushParser(class ALogger&, class AMathMLFactory&, const class TDictionary&);
virtual ~TPushParser();
+ virtual void reset(void);
virtual void push(const TToken&);
+ virtual std::string drop(void);
virtual void setCursorHint(const std::string&);
+ virtual bool hideCursor(void);
+ virtual bool showCursor(void);
-protected:
- TDocument document(void) const { return doc; }
+ virtual bool thaw(void);
+
+ DOM::Document document(void) const { return doc.document().cloneNode(true); }
private:
void init(void);
std::string PRIME(void) const;
bool isPrimes(const TNode&) const;
+
+
void do_begin(void);
void do_end(void);
void do_active(const std::string&);
void do_comment(void);
void do_control(const std::string&);
+
+
+ void gdelete_prev_token(void);
+ void gdelete_prev_script(void);
+ void gdelete_prev_group(void);
+ void gdelete_prev_macro(void);
void gdelete_prev(void);
- void rgreplace_futher(void);
+
+ void rgreplace_father(void);
+
+ void do_gdelete_script(void);
+ void do_gdelete_macro(void);
+ void do_gdelete_groupId(void);
+ void do_gdelete_phantom_group(void);
void do_gdelete(void);
void do_cr(void);
void do_apostrophe(void);
void advance(const TNode&);
+ bool correctBrace(void);
void process(const TToken&);
struct Frame
{
Frame(const TDictionary::Entry& e) : entry(e), pos(0) { };
+ Frame(const TDictionary::Entry&e, unsigned p) : entry(e), pos(p) { };
const TDictionary::Entry& entry;
unsigned pos;
};
unsigned nextId;
TDocument doc;
TNode cursor;
+ unsigned hiddenCursor;
const class TDictionary& dictionary;
};