7#include <QtCore/qset.h>
8#include <QtCore/qstack.h>
9#include <QtCore/qmap.h>
10#include <QtCore/qstring.h>
11#include <QtCore/qtextstream.h>
12#include <QtCore/qpair.h>
29typedef std::list<QString>::iterator
Name;
88 {
return rule->rhs.begin (); }
90 inline NameList::iterator
end_rhs ()
const
91 {
return rule->rhs.end (); }
100 {
return dot ==
rule->rhs.end (); }
135template <
typename _Tp>
149 {
return outs.begin (); }
152 {
return outs.end (); }
179 mutable std::list<iterator>
outs;
188template <
typename _Tp>
194 if (
it != repository ().
end ())
197 return repository ().
insert (tmp).first;
200template <
typename _Tp>
205 if (
it != outs.
end ())
ReadsGraph::iterator ReadNode
void buildDefaultReduceActions()
void dump(QTextStream &out, ReadNode rd)
void visitReadNode(ReadNode node)
void dump(QTextStream &out, IncludeNode incl)
void buildIncludesDigraph()
IncludesGraph::iterator IncludeNode
void buildIncludesAndFollows()
QPair< StatePointer, bool > internState(const State &state)
void visitIncludeNode(IncludeNode node)
Node< Include > IncludesGraph
QMultiMap< ItemPointer, Lookback > lookbacks
void closure(StatePointer state)
QMap< ItemPointer, NameSet > lookaheads
QMap< Name, QString > spells
Name intern(const char *id)
int expected_reduce_reduce
QMap< Name, TokenInfo > token_info
bool isNonTerminal(Name name) const
std::list< QString > names
bool isTerminal(Name name) const
void buildExtendedGrammar()
Name intern(const QString &id)
int expected_shift_reduce
bool operator<(const Include &other) const
Include(StatePointer s, Name n)
bool operator==(const Include &other) const
bool operator!=(const Include &other) const
bool isReduceItem() const
bool operator!=(const Item &other) const
NameList::iterator end_rhs() const
bool operator==(const Item &other) const
NameList::iterator begin_rhs() const
Lookback(StatePointer s, Name n)
bool operator<(const Lookback &other) const
bool operator!=(const Lookback &other) const
bool operator==(const Lookback &other) const
bool operator<(const Node< _Tp > &other) const
static Repository & repository()
edge_iterator end() const
static iterator get(_Tp data)
static iterator begin_nodes()
edge_iterator begin() const
std::list< iterator > outs
std::list< iterator >::iterator edge_iterator
bool operator==(const Node< _Tp > &other) const
bool operator!=(const Node< _Tp > &other) const
QPair< edge_iterator, bool > insertEdge(iterator other) const
Repository::iterator iterator
std::set< Node< _Tp > > Repository
static iterator end_nodes()
iterator find(const T &value)
iterator insert(const T &value)
\macro QT_RESTRICTED_CAST_FROM_ASCII
static QString fromUtf8(QByteArrayView utf8)
This is an overloaded member function, provided for convenience. It differs from the above function o...
bool operator!=(const Read &other) const
bool operator<(const Read &other) const
Read(StatePointer s, Name n)
bool operator==(const Read &other) const
QSet< QString >::iterator it
std::list< Item > ItemList
ItemList::iterator ItemPointer
StateList::iterator StatePointer
std::list< QString >::iterator Name
QMap< Name, StatePointer > Bundle
std::list< State > StateList
std::list< Rule > debug_infot
QMultiMap< Name, RulePointer > RuleMap
debug_infot::iterator RulePointer
QTextStream & operator<<(QTextStream &out, const Name &n)
QT_BEGIN_NAMESPACE QTextStream & qerr()
std::list< Name > NameList
Combined button and popup list for selecting options.
bool operator<(Name a, Name b)
std::pair< T1, T2 > QPair
DBusConnection const char * rule
GLboolean GLboolean GLboolean b
GLboolean GLboolean GLboolean GLboolean a
[7]
GLint GLsizei GLsizei GLenum GLenum GLsizei void * data
constexpr decltype(auto) qMakePair(T1 &&value1, T2 &&value2) noexcept(noexcept(std::make_pair(std::forward< T1 >(value1), std::forward< T2 >(value2))))
QRandomGenerator64 rd
[10]
QTextStream out(stdout)
[7]
bool operator!=(const State &other) const
QPair< ItemPointer, bool > insert(const Item &item)
RulePointer defaultReduce
QMap< Name, NameSet > reads
bool operator==(const State &o) const
QMap< Name, NameSet > follows
QPair< ItemPointer, bool > insertClosure(const Item &item)