From e03b3f477bcc160b72af4ab09cd8d12081017d2c Mon Sep 17 00:00:00 2001 From: bculkin2442 Date: Sun, 19 Feb 2017 08:30:45 -0500 Subject: Lots of things, but mostly evaluation --- dice-lang/src/bjc/dicelang/v2/Define.java | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) (limited to 'dice-lang/src/bjc/dicelang/v2/Define.java') diff --git a/dice-lang/src/bjc/dicelang/v2/Define.java b/dice-lang/src/bjc/dicelang/v2/Define.java index 6ca0c74..2ecbc69 100644 --- a/dice-lang/src/bjc/dicelang/v2/Define.java +++ b/dice-lang/src/bjc/dicelang/v2/Define.java @@ -23,7 +23,8 @@ public class Define implements UnaryOperator { private Iterator replacers; private String replacer; - public Define(int priorty, boolean isSub, boolean recur, + public Define(int priorty, + boolean isSub, boolean recur, boolean isCircular, String predicte, String searchr, Iterable replacrs) { priority = priorty; doRecur = recur; @@ -36,7 +37,7 @@ public class Define implements UnaryOperator { if(subType) { if(replacrs.iterator().hasNext()) { - replacers = new CircularIterator<>(replacrs); + replacers = new CircularIterator<>(replacrs, isCircular); } else { replacers = null; } @@ -79,8 +80,19 @@ public class Define implements UnaryOperator { StringBuffer sb = new StringBuffer(); while(searcherMatcher.find()) { - if(replacers == null) searcherMatcher.appendReplacement(sb,""); - else searcherMatcher.appendReplacement(sb, replacers.next()); + if(replacers == null) { + System.out.println("\t\tTRACE: running null replacer on substring " + + tok.substring(searcherMatcher.start(), searcherMatcher.end())); + + searcherMatcher.appendReplacement(sb,""); + } else { + String replac = replacers.next(); + + System.out.println("\t\tTRACE: running replacer " + replac + " on substring " + + tok.substring(searcherMatcher.start(), searcherMatcher.end())); + + searcherMatcher.appendReplacement(sb, replacers.next()); + } } searcherMatcher.appendTail(sb); -- cgit v1.2.3