private void AppendPOString(string value) { if (value == null) { value = string.Empty; } var startIndex = _builder.Length; _builder.Append('"'); POString.Encode(_builder, value, 0, value.Length); _builder.Append('"'); var endIndex = _builder.Length; if (!(!HasFlags(Flags.IgnoreLongLines) && endIndex - _lineStartIndex > MaxLineLength || !HasFlags(Flags.IgnoreLineBreaks) && IndexOfNewLine(startIndex + 1, endIndex - 1) >= 0)) { return; } startIndex++; _builder.Insert(startIndex, _stringBreak); _lineStartIndex = startIndex + _stringBreak.Length; _lineStartIndex--; while ((startIndex = GetStringBreakIndex()) >= 0) { _builder.Insert(startIndex, _stringBreak); _lineStartIndex = startIndex + _stringBreak.Length; _lineStartIndex--; } }
void BuildString(string value) { var startIndex = _builder.Length; _builder.Append('"'); POString.Encode(_builder, value, 0, value.Length); _builder.Append('"'); var endIndex = _builder.Length; if (!(!_flags.HasFlag(Flags.IgnoreLongLines) && endIndex - _lineStartIndex > maxLineLength || (!_flags.HasFlag(Flags.IgnoreLineBreaks) && IndexOfNewLine(startIndex + 1, endIndex - 1) >= 0))) { return; } startIndex++; _builder.Insert(startIndex, stringBreak); _lineStartIndex = startIndex + stringBreak.Length; _lineStartIndex--; while ((startIndex = GetStringBreakIndex()) >= 0) { _builder.Insert(startIndex, stringBreak); _lineStartIndex = startIndex + stringBreak.Length; _lineStartIndex--; } }
public override string ToString() { var idKindToken = POKey.GetIdKindToken(IdKind) ?? "?"; var value = Value ?? string.Empty; var sb = new StringBuilder(); sb.Append(idKindToken); sb.Append(' '); sb.Append('"'); POString.Encode(sb, value, 0, value.Length); sb.Append('"'); return(sb.ToString()); }