Mercurial > repos > rhope
diff backendutils.rhope @ 32:9ee9adc696e7
Merged changes
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Mon, 28 Sep 2009 19:49:06 -0400 |
parents | 914ad38f9b59 |
children | 3498713c3dc9 |
line wrap: on
line diff
--- a/backendutils.rhope Mon Sep 28 19:48:45 2009 -0400 +++ b/backendutils.rhope Mon Sep 28 19:49:06 2009 -0400 @@ -47,17 +47,17 @@ Blueprint Constant { - Var + Value } Constant[var:out] { - out <- [Build["Constant"]]Var <<[var] + out <- [Build["Constant"]]Value <<[var] } Make Op@Constant[const,func:out] { - out <- [const]Var >> + out <- [func]Lookup Constant[[const]Value >>] } Blueprint Result @@ -105,3 +105,35 @@ { out <- ["!"]Append[[[cond]Condition >>]Make Op[func]] } + +Blueprint OrCond +{ + Condition1 + Condition2 +} + +OrCond[cond1,cond2:out] +{ + out <- [[Build["OrCond"]]Condition1 <<[cond1]]Condition2 <<[cond2] +} + +Make Op@OrCond[cond,func:out] +{ + out <- ["("]Append[[[[cond]Condition1 >>]Append[" || "]]Append[[[cond]Condition2 >>]Append[")"]]] +} + +Blueprint AndCond +{ + Condition1 + Condition2 +} + +AndCond[cond1,cond2:out] +{ + out <- [[Build["AndCond"]]Condition1 <<[cond1]]Condition2 <<[cond2] +} + +Make Op@AndCond[cond,func:out] +{ + out <- ["("]Append[[[[cond]Condition1 >>]Append[" && "]]Append[[[cond]Condition2 >>]Append[")"]]] +}