@Override public void traverse() { replaceVariables(ScssStylesheet.getVariables()); } }
@Override public void traverse() { replaceVariables(ScssStylesheet.getVariables()); } }
@Override public void traverse() { replaceVariables(ScssStylesheet.getVariables()); } }
@Override public void traverse() { replaceVariables(ScssStylesheet.getVariables()); }
@Override public void traverse() { replaceVariables(ScssStylesheet.getVariables()); }
@Override public void traverse() { try { BlockNodeHandler.traverse(this); replaceVariables(ScssStylesheet.getVariables()); } catch (Exception e) { e.printStackTrace(); } }
@Override public void traverse() { replaceVariables(ScssStylesheet.getVariables()); EachNodeHandler.traverse(this); } }
protected void replaceVariablesForChildren() { for (Node child : getChildren()) { if (child instanceof IVariableNode) { ((IVariableNode) child).replaceVariables(ScssStylesheet .getVariables()); } } }
@Override public void traverse() { try { // limit variable scope to the mixin Map<String, VariableNode> variableScope = ScssStylesheet .openVariableScope(); replaceVariables(ScssStylesheet.getVariables()); replaceVariablesForChildren(); MixinNodeHandler.traverse(this); ScssStylesheet.closeVariableScope(variableScope); } catch (Exception e) { e.printStackTrace(); } }
@Override public void traverse() { /* * "replaceVariables(ScssStylesheet.getVariables());" seems duplicated * and can be extracted out of if, but it is not. * containsArithmeticalOperator must be called before replaceVariables. * Because for the "/" operator, it needs to see if its predecessor or * successor is a Variable or not, to determine it is an arithmetic * operator. */ if (ArithmeticExpressionEvaluator.get().containsArithmeticalOperator( value)) { replaceVariables(ScssStylesheet.getVariables()); value = ArithmeticExpressionEvaluator.get().evaluate(value); } else { replaceVariables(ScssStylesheet.getVariables()); } } }
@Override public void traverse() { /* * "replaceVariables(ScssStylesheet.getVariables());" seems duplicated * and can be extracted out of if, but it is not. * containsArithmeticalOperator must be called before replaceVariables. * Because for the "/" operator, it needs to see if its predecessor or * successor is a Variable or not, to determine it is an arithmetic * operator. */ if (ArithmeticExpressionEvaluator.get().containsArithmeticalOperator( expr)) { replaceVariables(ScssStylesheet.getVariables()); expr = ArithmeticExpressionEvaluator.get().evaluate(expr); } else { replaceVariables(ScssStylesheet.getVariables()); } VariableNodeHandler.traverse(this); } }
@Override public void traverse() { replaceVariables(ScssStylesheet.getVariables()); ScssStylesheet.addVariable(getModifiedList()); getParentNode().removeChild(this); }
private static void replaceEachDefNode(EachDefNode defNode) { Node last = defNode; for (final String var : defNode.getVariables()) { VariableNode varNode = new VariableNode(defNode.getVariableName() .substring(1), LexicalUnitImpl.createIdent(var), false); ArrayList<VariableNode> variables = new ArrayList<VariableNode>( ScssStylesheet.getVariables()); variables.add(varNode); for (final Node child : defNode.getChildren()) { Node copy = (Node) DeepCopy.copy(child); replaceInterpolation(copy, variables); defNode.getParentNode().appendChild(copy, last); last = copy; } } defNode.setChildren(new ArrayList<Node>()); defNode.getParentNode().removeChild(defNode); }