Ejemplo n.º 1
0
        private Node parseMixin()
        {
            Mixin     mixinToken = (Mixin)expect(typeof(Mixin));
            MixinNode node       = new MixinNode();

            node.setName(mixinToken.getValue());
            node.setLineNumber(mixinToken.getLineNumber());
            node.setFileName(filename);
            if (StringUtils.isNotBlank(mixinToken.getArguments()))
            {
                node.setArguments(mixinToken.getArguments());
            }
            if (peek() is Indent)
            {
                node.setBlock(block());
            }
            return(node);
        }
Ejemplo n.º 2
0
 private Node parseMixin()
 {
     Mixin mixinToken = (Mixin) expect(typeof (Mixin));
     MixinNode node = new MixinNode();
     node.setName(mixinToken.getValue());
     node.setLineNumber(mixinToken.getLineNumber());
     node.setFileName(filename);
     if (StringUtils.isNotBlank(mixinToken.getArguments()))
     {
         node.setArguments(mixinToken.getArguments());
     }
     if (peek() is Indent)
     {
         node.setBlock(block());
     }
     return node;
 }
Ejemplo n.º 3
0
 public void setMixin(String name, MixinNode node)
 {
     mixins.Add(name, node);
 }
Ejemplo n.º 4
0
        /*
        @mixin left($dist) {
          float: left;
          margin-left: $dist;
        }
        */
        public MixinNode ReadMixinBody()
        {
            var name = Read(); // name or string

            ReadTrivia();

            var parameters = new List<CssParameter>();

            if (current.Kind == TokenKind.LeftParenthesis)
            {
                parameters = ReadParameterList();
            }

            var mixin = new MixinNode(name.Text, parameters);

            ReadBlock(mixin);

            return mixin;
        }
Ejemplo n.º 5
0
 private void writeVariables(JadeModel model, MixinNode mixin, JadeTemplate template)
 {
     List<String> names = mixin.getArguments();
     List<String> values = arguments;
     if (names == null)
     {
     return;
     }
     for (int i = 0; i < names.Count; i++)
     {
     String key = names[i];
     Object value = null;
     if (i < values.Count)
     {
         value = values[i];
     }
     if (value != null)
     {
         try
         {
             value = ExpressionHandler.evaluateExpression(values[i], model);
         }
         catch (Exception e)
         {
             throw new JadeCompilerException(this, template.getTemplateLoader(), e);
         }
     }
     if (key != null)
     {
         model.put(key, value);
     }
     }
 }
Ejemplo n.º 6
0
 private void writeAttributes(JadeModel model, MixinNode mixin, JadeTemplate template)
 {
     model.put("attributes", mergeInheritedAttributes(model));
 }