liquid-node
Version:
Node.js port of Tobias Lütke's Liquid template engine.
23 lines (18 loc) • 571 B
text/coffeescript
Liquid = require "../../liquid"
module.exports = class Assign extends Liquid.Tag
SyntaxHelp = "Syntax Error in 'assign' - Valid syntax: assign [var] = [source]"
Syntax = ///
((?:#{Liquid.VariableSignature.source})+)
\s*=\s*
(.*)\s*
///
constructor: (template, tagName, markup) ->
if match = Syntax.exec(markup)
= match[1]
= new Liquid.Variable match[2]
else
throw new Liquid.SyntaxError(SyntaxHelp)
super
render: (context) ->
context.lastScope()[] = .render(context)
super context