#include <skeleton.h>
Definition at line 30 of file skeleton.h.
Definition at line 15 of file skeleton.cc.
std::set< rule_t > reachable
static const uint32_t DIST_ERROR
static rule_rank_t none()
void re2c::Node::calc_dist |
( |
| ) |
|
Definition at line 18 of file maxlen.cc.
31 for (arcs_t::iterator i =
arcs.begin (); i !=
arcs.end (); ++i)
33 i->first->calc_dist ();
38 dist = i->first->dist;
42 dist = std::max (
dist, i->first->dist);
static const uint32_t DIST_ERROR
local_increment_t< uint8_t > local_inc
static const uint32_t DIST_MAX
void re2c::Node::calc_reachable |
( |
| ) |
|
Definition at line 16 of file unreachable.cc.
29 for (arcs_t::iterator i =
arcs.begin (); i !=
arcs.end (); ++i)
31 i->first->calc_reachable ();
32 reachable.insert (i->first->reachable.begin (), i->first->reachable.end ());
std::set< rule_t > reachable
local_increment_t< uint8_t > local_inc
template<typename cunit_t , typename key_t >
void re2c::Node::cover |
( |
path_t & |
prefix, |
|
|
FILE * |
input, |
|
|
FILE * |
keys, |
|
|
covers_t & |
size |
|
) |
| |
Definition at line 56 of file generate_data.cc.
65 size = size + cover_one<cunit_t, key_t> (input, keys, prefix);
70 for (arcs_t::iterator i =
arcs.begin ();
71 i !=
arcs.end () && !size.overflow(); ++i)
73 path_t new_prefix = prefix;
74 new_prefix.extend (i->first->rule, i->first->ctx, &i->second);
75 i->first->cover<cunit_t, key_t> (new_prefix, input, keys, size);
76 if (i->first->suffix != NULL &&
suffix == NULL)
79 suffix->
extend (i->first->rule, i->first->ctx, &i->second);
void append(const path_t *p)
void extend(rule_t r, bool c, const arc_t *a)
local_increment_t< uint8_t > local_inc
bool re2c::Node::end |
( |
| ) |
const |
re2c::Node::FORBID_COPY |
( |
Node |
| ) |
|
void re2c::Node::init |
( |
bool |
b, |
|
|
RuleOp * |
r, |
|
|
const std::vector< std::pair< Node *, uint32_t > > & |
arcs |
|
) |
| |
Definition at line 26 of file skeleton.cc.
37 std::vector<std::pair<Node*, uint32_t> >::const_iterator
43 const uint32_t ub = i->second - 1;
50 const uint32_t step = 1 + (ub - lb) / 0x100;
51 for (uint32_t c = lb; c < ub; c += step)
53 arcs[n].push_back (c);
55 arcs[n].push_back (ub);
57 arcsets[n].push_back (std::make_pair (lb, ub));
void re2c::Node::naked_ways |
( |
way_t & |
prefix, |
|
|
std::vector< way_t > & |
ways, |
|
|
nakeds_t & |
size |
|
) |
| |
Definition at line 19 of file control_flow.cc.
27 ways.push_back (prefix);
33 for (arcsets_t::iterator i =
arcsets.begin ();
34 i !=
arcsets.end () && !size.overflow (); ++i)
36 prefix.push_back (&i->second);
37 i->first->naked_ways (prefix, ways, size);
static u32lim_t from64(uint64_t x)
local_increment_t< uint8_t > local_inc
uint32_t re2c::Node::dist |
const uint32_t re2c::Node::DIST_ERROR = std::numeric_limits<uint32_t>::max() |
|
static |
const uint32_t re2c::Node::DIST_MAX = DIST_ERROR - 1 |
|
static |
std::set<rule_t> re2c::Node::reachable |
The documentation for this struct was generated from the following files: