public override void VisitPrimitiveExpression(JsPrimitiveExpression node) { if (node.Value == null) { output.Append("null"); } else if (node.Value is string) { output.Append("\""); output.Append(StringEscaper.EscapeString((string)node.Value, false)); output.Append("\""); } else if (node.Value is int || node.Value is short || node.Value is byte || node.Value is long || node.Value is sbyte || node.Value is ushort || node.Value is uint || node.Value is ulong || node.Value is float || node.Value is double || node.Value is decimal) { output.Append(node.Value.ToString()); } else if (node.Value is bool) { output.Append((bool)node.Value ? "true" : "false"); } else if (node.Value is char) { output.Append("\""); output.Append(StringEscaper.EscapeString(((char)node.Value).ToString(), true)); output.Append("\""); } else { throw new InvalidOperationException("Unexpected primitive expression value: " + node.Value); } }
public virtual JsNode Visit(JsPrimitiveExpression node) { return(DefaultVisit(node, x => x)); }
public virtual void Visit(JsPrimitiveExpression node) { DefaultVisit(node); }
public void Visit(JsPrimitiveExpression node) { BeforeVisit(node); DefaultVisit(node, VisitPrimitiveExpression); AfterVisit(node); }
public virtual void VisitPrimitiveExpression(JsPrimitiveExpression node) { }