diff --git a/src/spectator/dsl.cr b/src/spectator/dsl.cr index 7e2e842..e8b8063 100644 --- a/src/spectator/dsl.cr +++ b/src/spectator/dsl.cr @@ -45,6 +45,8 @@ module Spectator end macro let(name, &block) + let!({{name}}!) {{block}} + module Context @_%proxy : ValueProxy? @@ -57,15 +59,15 @@ module Spectator end end end - - def {{name.id}}! - {{block.body}} - end end end - def let! - raise NotImplementedError.new("Spectator::DSL#let!") + macro let!(name, &block) + module Context + def {{name.id}} + {{block.body}} + end + end end macro is_expected