public string ToJsonString() { /* * NB: JsonTextWriter is guaranteed to close the StringWriter * https://github.com/JamesNK/Newtonsoft.Json/blob/master/Src/Newtonsoft.Json/JsonTextWriter.cs#L150-L160 */ var sb = new StringBuilder(); var sw = new StringWriter(sb); using (JsonWriter jw = new JsonTextWriter(sw)) { jw.WriteStartArray(); jw.WriteValue(FunctionName); jw.WriteRawFilterTokenArray(Left); jw.WriteRawFilterTokenArray(Right); jw.WriteEndArray(); } return sb.ToString(); }