Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Applying CA1834 - Use StringBuilder.Append(char) for single character strings #4769

Open
wants to merge 1 commit into
base: dev
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions runtime/CSharp/src/Atn/ATNConfig.cs
Original file line number Diff line number Diff line change
Expand Up @@ -220,18 +220,18 @@ public String ToString(IRecognizer recog, bool showAlt)
buf.Append(state);
if (showAlt)
{
buf.Append(",");
buf.Append(',');
buf.Append(alt);
}
if (context != null)
{
buf.Append(",[");
buf.Append(context.ToString());
buf.Append("]");
buf.Append(']');
}
if (semanticContext != null && semanticContext != SemanticContext.Empty.Instance)
{
buf.Append(",");
buf.Append(',');
buf.Append(semanticContext);
}
if (OuterContextDepth > 0)
Expand Down
211 changes: 106 additions & 105 deletions runtime/CSharp/src/Atn/ArrayPredictionContext.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,123 +2,124 @@
* Use of this file is governed by the BSD 3-clause license that
* can be found in the LICENSE.txt file in the project root.
*/
using Antlr4.Runtime.Sharpen;
using System;
using System.Text;
using Antlr4.Runtime.Sharpen;

namespace Antlr4.Runtime.Atn
{


#pragma warning disable 0659 // 'class' overrides Object.Equals(object o) but does not override Object.GetHashCode()
public class ArrayPredictionContext : PredictionContext
{
/** Parent can be null only if full ctx mode and we make an array
#pragma warning disable 0659 // 'class' overrides Object.Equals(object o) but does not override Object.GetHashCode()
public class ArrayPredictionContext : PredictionContext
{
/** Parent can be null only if full ctx mode and we make an array
* from {@link #EMPTY} and non-empty. We merge {@link #EMPTY} by using null parent and
* returnState == {@link #EMPTY_RETURN_STATE}.
*/
public readonly PredictionContext[] parents;
public readonly PredictionContext[] parents;

/** Sorted for merge, no duplicates; if present,
/** Sorted for merge, no duplicates; if present,
* {@link #EMPTY_RETURN_STATE} is always last.
*/
public readonly int[] returnStates;

public ArrayPredictionContext(SingletonPredictionContext a)
: this(new PredictionContext[] { a.parent }, new int[] { a.returnState })
{
}

public ArrayPredictionContext(PredictionContext[] parents, int[] returnStates)
: base(CalculateHashCode(parents, returnStates))
{
// System.err.println("CREATE ARRAY: "+Arrays.toString(parents)+", "+Arrays.toString(returnStates));
this.parents = parents;
this.returnStates = returnStates;
}

public override bool IsEmpty
{
get
{
// since EMPTY_RETURN_STATE can only appear in the last position, we
// don't need to verify that size==1
return returnStates[0] == EMPTY_RETURN_STATE;
}
}

public override int Size
{
get
{
return returnStates.Length;
}
}

public override PredictionContext GetParent(int index)
{
return parents[index];
}

public override int GetReturnState(int index)
{
return returnStates[index];
}

// @Override
// public int findReturnState(int returnState) {
// return Arrays.binarySearch(returnStates, returnState);
// }

public override bool Equals(Object o)
{
if (this == o)
{
return true;
}
else if (!(o is ArrayPredictionContext))
{
return false;
}

if (this.GetHashCode() != o.GetHashCode())
{
return false; // can't be same if hash is different
}

ArrayPredictionContext a = (ArrayPredictionContext)o;
return Arrays.Equals(returnStates, a.returnStates) &&
Arrays.Equals(parents, a.parents);
}


public override String ToString()
{
if (IsEmpty)
return "[]";
StringBuilder buf = new StringBuilder();
buf.Append("[");
for (int i = 0; i < returnStates.Length; i++)
{
if (i > 0) buf.Append(", ");
if (returnStates[i] == EMPTY_RETURN_STATE)
{
buf.Append("$");
continue;
}
buf.Append(returnStates[i]);
if (parents[i] != null)
{
buf.Append(' ');
buf.Append(parents[i].ToString());
}
else {
buf.Append("null");
}
}
buf.Append("]");
return buf.ToString();
}
}
public readonly int[] returnStates;

public ArrayPredictionContext(SingletonPredictionContext a)
: this(new PredictionContext[] { a.parent }, new int[] { a.returnState })
{
}

public ArrayPredictionContext(PredictionContext[] parents, int[] returnStates)
: base(CalculateHashCode(parents, returnStates))
{
// System.err.println("CREATE ARRAY: "+Arrays.toString(parents)+", "+Arrays.toString(returnStates));
this.parents = parents;
this.returnStates = returnStates;
}

public override bool IsEmpty
{
get
{
// since EMPTY_RETURN_STATE can only appear in the last position, we
// don't need to verify that size==1
return returnStates[0] == EMPTY_RETURN_STATE;
}
}

public override int Size
{
get
{
return returnStates.Length;
}
}

public override PredictionContext GetParent(int index)
{
return parents[index];
}

public override int GetReturnState(int index)
{
return returnStates[index];
}

// @Override
// public int findReturnState(int returnState) {
// return Arrays.binarySearch(returnStates, returnState);
// }

public override bool Equals(Object o)
{
if (this == o)
{
return true;
}
else if (!(o is ArrayPredictionContext))
{
return false;
}

if (this.GetHashCode() != o.GetHashCode())
{
return false; // can't be same if hash is different
}

ArrayPredictionContext a = (ArrayPredictionContext)o;
return Arrays.Equals(returnStates, a.returnStates) &&
Arrays.Equals(parents, a.parents);
}


public override String ToString()
{
if (IsEmpty)
return "[]";
StringBuilder buf = new StringBuilder();
buf.Append('[');
for (int i = 0; i < returnStates.Length; i++)
{
if (i > 0) buf.Append(", ");
if (returnStates[i] == EMPTY_RETURN_STATE)
{
buf.Append('$');
continue;
}
buf.Append(returnStates[i]);
if (parents[i] != null)
{
buf.Append(' ');
buf.Append(parents[i].ToString());
}
else
{
buf.Append("null");
}
}
buf.Append(']');
return buf.ToString();
}
}

}
4 changes: 2 additions & 2 deletions runtime/CSharp/src/Atn/PredictionContext.cs
Original file line number Diff line number Diff line change
Expand Up @@ -498,7 +498,7 @@ public virtual string[] ToStrings(IRecognizer recognizer, PredictionContext stop
PredictionContext p = this;
int stateNumber = currentState;
StringBuilder localBuffer = new StringBuilder();
localBuffer.Append("[");
localBuffer.Append('[');
while (!p.IsEmpty && p != stop)
{
int index = 0;
Expand Down Expand Up @@ -548,7 +548,7 @@ public virtual string[] ToStrings(IRecognizer recognizer, PredictionContext stop
stateNumber = p.GetReturnState(index);
p = p.GetParent(index);
}
localBuffer.Append("]");
localBuffer.Append(']');
result.Add(localBuffer.ToString());
if (last)
{
Expand Down
2 changes: 1 addition & 1 deletion runtime/CSharp/src/Dfa/DFASerializer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ public override string ToString()
{
buf.Append(GetStateString(s));
String label = GetEdgeLabel(i);
buf.Append("-");
buf.Append('-');
buf.Append(label);
buf.Append("->");
buf.Append(GetStateString(t));
Expand Down
2 changes: 1 addition & 1 deletion runtime/CSharp/src/Dfa/DFAState.cs
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ public override bool Equals(Object o)
public override String ToString()
{
StringBuilder buf = new StringBuilder();
buf.Append(stateNumber).Append(":").Append(configSet);
buf.Append(stateNumber).Append(':').Append(configSet);
if (isAcceptState)
{
buf.Append("=>");
Expand Down
12 changes: 6 additions & 6 deletions runtime/CSharp/src/Misc/IntervalSet.cs
Original file line number Diff line number Diff line change
Expand Up @@ -622,7 +622,7 @@ public virtual string ToString(bool elemAreChar)
}
if (this.Count > 1)
{
buf.Append("{");
buf.Append('{');
}

bool first = true;
Expand All @@ -644,7 +644,7 @@ public virtual string ToString(bool elemAreChar)
{
if (elemAreChar)
{
buf.Append("'").Append((char)a).Append("'");
buf.Append('\'').Append((char)a).Append('\'');
}
else
{
Expand All @@ -656,7 +656,7 @@ public virtual string ToString(bool elemAreChar)
{
if (elemAreChar)
{
buf.Append("'").Append((char)a).Append("'..'").Append((char)b).Append("'");
buf.Append('\'').Append((char)a).Append("'..'").Append((char)b).Append('\'');
}
else
{
Expand All @@ -666,7 +666,7 @@ public virtual string ToString(bool elemAreChar)
}
if (this.Count > 1)
{
buf.Append("}");
buf.Append('}');
}
return buf.ToString();
}
Expand All @@ -680,7 +680,7 @@ public virtual string ToString(IVocabulary vocabulary)
}
if (this.Count > 1)
{
buf.Append("{");
buf.Append('{');
}

bool first = true;
Expand Down Expand Up @@ -710,7 +710,7 @@ public virtual string ToString(IVocabulary vocabulary)
}
if (this.Count > 1)
{
buf.Append("}");
buf.Append('}');
}
return buf.ToString();
}
Expand Down
2 changes: 1 addition & 1 deletion runtime/CSharp/src/Parser.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1101,7 +1101,7 @@ public virtual string GetRuleInvocationStackAsString()
sb.Append (", ");
}
sb.Length = sb.Length - 2;
sb.Append ("]");
sb.Append (']');
return sb.ToString ();
}

Expand Down
6 changes: 3 additions & 3 deletions runtime/CSharp/src/RuleContext.cs
Original file line number Diff line number Diff line change
Expand Up @@ -291,7 +291,7 @@ public virtual string ToString(IList<string> ruleNames, Antlr4.Runtime.RuleConte
{
StringBuilder buf = new StringBuilder();
Antlr4.Runtime.RuleContext p = this;
buf.Append("[");
buf.Append('[');
while (p != null && p != stop)
{
if (ruleNames == null)
Expand All @@ -309,11 +309,11 @@ public virtual string ToString(IList<string> ruleNames, Antlr4.Runtime.RuleConte
}
if (p.Parent != null && (ruleNames != null || !p.Parent.IsEmpty))
{
buf.Append(" ");
buf.Append(' ');
}
p = p.Parent;
}
buf.Append("]");
buf.Append(']');
return buf.ToString();
}
}
Expand Down
4 changes: 2 additions & 2 deletions runtime/CSharp/src/Tree/Trees.cs
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ public static string ToStringTree(ITree t, IList<string> ruleNames)
return s;
}
StringBuilder buf = new StringBuilder();
buf.Append("(");
buf.Append('(');
s = Utils.EscapeWhitespace(GetNodeText(t, ruleNames), false);
buf.Append(s);
buf.Append(' ');
Expand All @@ -69,7 +69,7 @@ public static string ToStringTree(ITree t, IList<string> ruleNames)
}
buf.Append(ToStringTree(t.GetChild(i), ruleNames));
}
buf.Append(")");
buf.Append(')');
return buf.ToString();
}

Expand Down
Loading