mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2025-11-14 04:37:10 +00:00
new system for debug logs
This commit is contained in:
44
rulegen.cpp
44
rulegen.cpp
@@ -558,7 +558,7 @@ EX void shortcut_found(tcell *c, tcell *alt, vector<twalker> &walkers, vector<tw
|
||||
return;
|
||||
}
|
||||
|
||||
if(debugflags & DF_GEOM)
|
||||
if(debug_geometry)
|
||||
println(hlog, "new shortcut found, pre = ", pre, " post = ", post, " pre reaches ", walkers[wpos], " post reaches ", walkers2.back(), " of type ", walkers[wpos].at->id, " sample = ", c);
|
||||
|
||||
if(isize(pre) > max_shortcut_length) {
|
||||
@@ -575,7 +575,7 @@ EX void shortcut_found(tcell *c, tcell *alt, vector<twalker> &walkers, vector<tw
|
||||
sh->last_dir = c->any_nearer;
|
||||
auto& sh1 = *sh;
|
||||
|
||||
if(debugflags & DF_GEOM) println(hlog, "exhaustive search:");
|
||||
if(debug_geometry) println(hlog, "exhaustive search:");
|
||||
indenter ind(2);
|
||||
tcell* c1 = first_tcell;
|
||||
while(c1) {
|
||||
@@ -595,11 +595,11 @@ EX void find_new_shortcuts(tcell *c, int d, tcell *alt, int newdir, int delta) {
|
||||
if(flags & w_known_distances) return;
|
||||
|
||||
ufindc(c);
|
||||
if(debugflags & DF_GEOM)
|
||||
if(debug_geometry)
|
||||
println(hlog, "solid ", c, " changes ", c->dist, " to ", d, " alt=", alt);
|
||||
|
||||
if(newdir == c->any_nearer) {
|
||||
if(debugflags & DF_GEOM)
|
||||
if(debug_geometry)
|
||||
println(hlog, "same direction");
|
||||
return;
|
||||
}
|
||||
@@ -785,7 +785,7 @@ EX void be_solid(tcell *c) {
|
||||
look_for_shortcuts(c);
|
||||
ufindc(c);
|
||||
if(c->dist == MYSTERY) {
|
||||
if(debugflags & DF_GEOM)
|
||||
if(debug_geometry)
|
||||
println(hlog, "set solid but no dist ", c);
|
||||
debuglist = { c };
|
||||
throw rulegen_failure("set solid but no dist");
|
||||
@@ -832,7 +832,7 @@ EX void look_for_shortcuts(tcell *c, shortcut& sh) {
|
||||
|
||||
process_fix_queue();
|
||||
if(tw.at->dist < c->dist) {
|
||||
if(debugflags & DF_GEOM)
|
||||
if(debug_geometry)
|
||||
println(hlog, "smart shortcut updated ", c->dist, " to ", tw.at->dist);
|
||||
}
|
||||
push_unify(tw, tw0);
|
||||
@@ -1236,7 +1236,7 @@ int get_side(twalker what) {
|
||||
cw = get_parent_dir(cw);
|
||||
if(cw.peek()->dist >= cw.at->dist) {
|
||||
handle_distance_errors();
|
||||
if(debugflags & DF_GEOM)
|
||||
if(debug_geometry)
|
||||
println(hlog, "get_parent_dir error at ", cw, " and ", cw.at->move(cw.spin), ": ", cw.at->dist, "::", cw.at->move(cw.spin)->dist);
|
||||
throw rulegen_failure("get_parent_dir error");
|
||||
}
|
||||
@@ -1513,7 +1513,7 @@ EX void rules_iteration_for(twalker& cw) {
|
||||
else if(ts.rules != cids) {
|
||||
handle_distance_errors();
|
||||
auto& r = ts.rules;
|
||||
if(debugflags & DF_GEOM) {
|
||||
if(debug_geometry) {
|
||||
println(hlog, "merging ", ts.rules, " vs ", cids);
|
||||
}
|
||||
int mismatches = 0;
|
||||
@@ -1555,7 +1555,7 @@ EX void rules_iteration_for(twalker& cw) {
|
||||
|
||||
void minimize_rules() {
|
||||
states_premini = isize(treestates);
|
||||
if(debugflags & DF_GEOM)
|
||||
if(debug_geometry)
|
||||
println(hlog, "minimizing rules...");
|
||||
int next_id = isize(treestates);
|
||||
|
||||
@@ -1599,7 +1599,7 @@ void minimize_rules() {
|
||||
}
|
||||
}
|
||||
|
||||
if(debugflags & DF_GEOM)
|
||||
if(debug_geometry)
|
||||
println(hlog, "final new_ids = ", new_ids, " / ", next_id);
|
||||
|
||||
if(1) {
|
||||
@@ -1686,7 +1686,7 @@ void find_possible_parents() {
|
||||
|
||||
int pp = 0;
|
||||
for(auto& ts: treestates) if(ts.is_possible_parent) pp++;
|
||||
if(debugflags & DF_GEOM)
|
||||
if(debug_geometry)
|
||||
println(hlog, pp, " of ", isize(treestates), " states are possible_parents");
|
||||
}
|
||||
|
||||
@@ -1756,10 +1756,10 @@ void verified_treewalk(twalker& tw, int id, int dir) {
|
||||
if((flags & w_examine_all) || !branch_conflicts_seen.count(conflict_id)) {
|
||||
branch_conflicts_seen.insert(conflict_id);
|
||||
important.push_back(tw.at);
|
||||
if(debugflags & DF_GEOM)
|
||||
if(debug_geometry)
|
||||
println(hlog, "branch conflict ", conflict_id, " found");
|
||||
}
|
||||
else if(debugflags & DF_GEOM)
|
||||
else if(debug_geometry)
|
||||
println(hlog, "branch conflict ", conflict_id, " found again");
|
||||
debuglist = {tw, tw+wstep};
|
||||
throw verify_advance_failed();
|
||||
@@ -1772,7 +1772,7 @@ bool examine_branch(int id, int left, int right) {
|
||||
if(WDIM == 3) return true;
|
||||
auto rg = treestates[id].giver;
|
||||
|
||||
if(debugflags & DF_GEOM)
|
||||
if(debug_geometry)
|
||||
println(hlog, "need to examine branches ", tie(left, right), " of ", id, " starting from ", rg, " step = ", rg+left+wstep, " vs ", rg+right+wstep);
|
||||
|
||||
indenter ind(2);
|
||||
@@ -1972,10 +1972,10 @@ EX void rules_iteration() {
|
||||
}
|
||||
|
||||
handle_distance_errors();
|
||||
if(debugflags & DF_GEOM)
|
||||
if(debug_geometry)
|
||||
println(hlog, "number of treestates = ", isize(treestates));
|
||||
rule_root = get_treestate_id(t_origin[0]).second;
|
||||
if(debugflags & DF_GEOM)
|
||||
if(debug_geometry)
|
||||
println(hlog, "rule_root = ", rule_root);
|
||||
|
||||
for(int id=0; id<isize(treestates); id++) {
|
||||
@@ -2064,7 +2064,7 @@ EX void rules_iteration() {
|
||||
}
|
||||
if(qbranches == 2) double_live_branches++;
|
||||
if((flags & w_slow_side) && first_live_branch == last_live_branch && treestates[id].is_root) {
|
||||
if(debugflags & DF_GEOM)
|
||||
if(debug_geometry)
|
||||
println(hlog, "for id ", id, " we have a single live branch");
|
||||
single_live_branches++;
|
||||
indenter ind(2);
|
||||
@@ -2074,7 +2074,7 @@ EX void rules_iteration() {
|
||||
if(isize(single_live_branch_close_to_root) != q) {
|
||||
vector<tcell*> v;
|
||||
for(auto c: single_live_branch_close_to_root) v.push_back(c);
|
||||
if(debugflags & DF_GEOM)
|
||||
if(debug_geometry)
|
||||
println(hlog, "changed single_live_branch_close_to_root from ", q, " to ", v);
|
||||
debuglist = { treestates[id].giver };
|
||||
clear_sidecache_and_codes();
|
||||
@@ -2506,7 +2506,7 @@ EX bool prepare_rules() {
|
||||
rules_known_for = arb::current.name;
|
||||
rule_status = XLAT("rules generated successfully: %1 states using %2-%3 cells",
|
||||
its(isize(treestates)), its(tcellcount), its(tunified));
|
||||
if(debugflags & DF_GEOM) println(hlog, rule_status);
|
||||
if(debug_geometry) println(hlog, rule_status);
|
||||
return true;
|
||||
}
|
||||
catch(rulegen_retry& e) {
|
||||
@@ -2518,7 +2518,7 @@ EX bool prepare_rules() {
|
||||
catch(rulegen_failure& e) {
|
||||
rule_status = XLAT("bug: %1", e.what());
|
||||
}
|
||||
if(debugflags & DF_GEOM) println(hlog, rule_status);
|
||||
if(debug_geometry) println(hlog, rule_status);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -2612,9 +2612,9 @@ EX void parse_treestate(arb::arbi_tiling& c, exp_parser& ep) {
|
||||
if(qparent > 1) throw hr_parse_exception("multiple parent at " + ep.where());
|
||||
if(qparent == 1) {
|
||||
ts.parent_dir = sumparent;
|
||||
if(debugflags & DF_GEOM) println(hlog, "before: ", ts.rules);
|
||||
if(debug_geometry) println(hlog, "before: ", ts.rules);
|
||||
std::rotate(ts.rules.begin(), ts.rules.begin() + sumparent, ts.rules.end());
|
||||
if(debugflags & DF_GEOM) println(hlog, "after : ", ts.rules);
|
||||
if(debug_geometry) println(hlog, "after : ", ts.rules);
|
||||
}
|
||||
ep.force_eat(")");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user