Overview
SHA1 Hash: | 94f038249932a60dc8394daefa51db46b273243f |
---|---|
Date: | 2010-11-26 16:14:27 |
User: | kinaba |
Comment: | changed the semantics of def foo(x @macro) {}, the @macro-layered parameter. - in @macro( foo(e) ), e is run in @macro (this is ok) - in @value( foo(e) ), e is run in (rawmacro)!! - in @rawmacro( foo(e) ), e is run in (rawmacro)!! |
Timelines: | family | ancestors | descendants | both | trunk |
Downloads: | Tarball | ZIP archive |
Other Links: | files | file ages | manifest |
Tags And Properties
- branch=trunk inherited from [f65680e1d2]
- sym-trunk inherited from [f65680e1d2]
Changes
Modified polemy/eval.d from [1c0a1caee00496c7] to [47affa2343c633ca].
219 { 219 { 220 Table newCtx = new Table(f.definitionContext(), Table.Ki 220 Table newCtx = new Table(f.definitionContext(), Table.Ki 221 foreach(i,p; f.params()) 221 foreach(i,p; f.params()) 222 if( p.layers.empty ) 222 if( p.layers.empty ) 223 newCtx.set(p.name, isMacroLayer(lay)?Mac 223 newCtx.set(p.name, isMacroLayer(lay)?Mac 224 else 224 else 225 foreach(argLay; p.layers) 225 foreach(argLay; p.layers) > 226 if( lay!=MacroLayer && isMacroLa > 227 newCtx.set(p.name, argLa > 228 else 226 newCtx.set(p.name, argLay, eval( | 229 newCtx.set(p.name, argLa 227 scope _ = new PushCallStack(pos, callstackmsg); 230 scope _ = new PushCallStack(pos, callstackmsg); 228 return f.invoke(isMacroLayer(lay)?MacroLayer:lay, newCtx 231 return f.invoke(isMacroLayer(lay)?MacroLayer:lay, newCtx 229 } 232 } 230 throw genex!RuntimeException(pos, text("tried to call non-functi 233 throw genex!RuntimeException(pos, text("tried to call non-functi 231 } 234 } 232 235 233 Value lift(Value v, Layer lay, Table ctx, LexPosition pos) 236 Value lift(Value v, Layer lay, Table ctx, LexPosition pos)