Skip to content

Commit

Permalink
qodana and sonarcloud
Browse files Browse the repository at this point in the history
  • Loading branch information
b3b00 committed Mar 1, 2024
1 parent fcdc7e3 commit 7ef94dc
Show file tree
Hide file tree
Showing 7 changed files with 99 additions and 123 deletions.
2 changes: 1 addition & 1 deletion src/sly/lexer/GenericLexer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1088,7 +1088,7 @@ private void AddDoubleWhenDoubleTokenPresent(IN token, DateFormat format, char s
var newLine = lexerPosition.Line + lines.Count - 1;
int newColumn;
if (lines.Count > 1)
newColumn = lines.Last() + MultiLineCommentEnd.Length;
newColumn = lines[lines.Count-1] + MultiLineCommentEnd.Length;
else
newColumn = lexerPosition.Column + lines[0] + MultiLineCommentEnd.Length;

Expand Down
5 changes: 0 additions & 5 deletions src/sly/lexer/LexerBuilder.cs
Original file line number Diff line number Diff line change
Expand Up @@ -344,11 +344,6 @@ private static bool IsGenericLexer<IN>(Dictionary<IN, (List<LexemeAttribute> lex
config.IndentationAware = lexerAttribute.IndentationAWare;
}

var modesAttribute = typeof(IN).GetCustomAttribute<ModesAttribute>();
if (modesAttribute != null)
{
}

var statics = new List<GenericToken>();
foreach (var lexeme in attributes.Values.SelectMany<List<LexemeAttribute>, LexemeAttribute>(list => list))
{
Expand Down
2 changes: 1 addition & 1 deletion src/sly/lexer/fsm/FSMLexer.cs
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ public FSMTransition GetTransition(int nodeId, char token)
if (HasState(nodeId))
if (Transitions.TryGetValue(nodeId, out var leavingTransitions))
{
transition = leavingTransitions.FirstOrDefault(t => t.Match(token));
transition = leavingTransitions.Find(t => t.Match(token));
}

return transition;
Expand Down
10 changes: 5 additions & 5 deletions src/sly/parser/generator/EBNFParserBuilder.cs
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ public EBNFParserBuilder(string i18n = null) : base(i18n)
}

var ruleparser = new RuleParser<IN>();
var builder = new ParserBuilder<EbnfTokenGeneric, GrammarNode<IN>>(I18n);
var builder = new ParserBuilder<EbnfTokenGeneric, GrammarNode<IN>>(I18N);

var grammarParser = builder.BuildParser(ruleparser, ParserType.LL_RECURSIVE_DESCENT, "rule").Result;

Expand All @@ -55,7 +55,7 @@ public EBNFParserBuilder(string i18n = null) : base(i18n)
{
var recs = string.Join("\n", recursions.Select<List<string>, string>(x => string.Join(" > ", x)));
result.AddError(new ParserInitializationError(ErrorLevel.FATAL,
I18N.Instance.GetText(I18n, I18NMessage.LeftRecursion, recs),
i18n.I18N.Instance.GetText(I18N, I18NMessage.LeftRecursion, recs),
ErrorCodes.PARSER_LEFT_RECURSIVE));
return result;
}
Expand All @@ -73,7 +73,7 @@ public EBNFParserBuilder(string i18n = null) : base(i18n)

SyntaxTreeVisitor<IN, OUT> visitor = null;
visitor = new EBNFSyntaxTreeVisitor<IN, OUT>(configuration, parserInstance);
var parser = new Parser<IN, OUT>(I18n, syntaxParser, visitor);
var parser = new Parser<IN, OUT>(I18N, syntaxParser, visitor);
parser.Configuration = configuration;
var lexerResult = BuildLexer(extensionBuilder, lexerPostProcess,
configuration.GetAllExplicitTokenClauses().Select(x => x.ExplicitToken).Distinct().ToList());
Expand Down Expand Up @@ -105,12 +105,12 @@ public EBNFParserBuilder(string i18n = null) : base(i18n)
{
case ParserType.LL_RECURSIVE_DESCENT:
{
parser = new RecursiveDescentSyntaxParser<IN, OUT>(conf, rootRule, I18n);
parser = new RecursiveDescentSyntaxParser<IN, OUT>(conf, rootRule, I18N);
break;
}
case ParserType.EBNF_LL_RECURSIVE_DESCENT:
{
parser = new EBNFRecursiveDescentSyntaxParser<IN, OUT>(conf, rootRule, I18n);
parser = new EBNFRecursiveDescentSyntaxParser<IN, OUT>(conf, rootRule, I18N);
break;
}
default:
Expand Down
18 changes: 8 additions & 10 deletions src/sly/parser/generator/LeftRecursionChecker.cs
Original file line number Diff line number Diff line change
Expand Up @@ -109,19 +109,17 @@ public static (bool foundRecursion, List<List<string>> recursions) CheckLeftRecu

foreach (var leftClause in leftClauses)
{
if (configuration.NonTerminals.TryGetValue(leftClause, out var newNonTerminal))
if (configuration.NonTerminals.TryGetValue(leftClause, out var newNonTerminal) && newNonTerminal != null)
{
if (newNonTerminal != null)
var nPath = BuildPath(currentPath, leftClause);
var (foundRRuleRecursion, recursion) = CheckLeftRecursion(configuration, newNonTerminal, nPath);
if (!foundRRuleRecursion)
{
var nPath = BuildPath(currentPath, leftClause);
var (foundRRuleRecursion, recursion) = CheckLeftRecursion(configuration, newNonTerminal, nPath);
if (foundRRuleRecursion)
{
foundRecursion = true;
recursions.AddRange(recursion);
}

continue;
}
foundRecursion = true;
recursions.AddRange(recursion);

}
}

Expand Down
Loading

0 comments on commit 7ef94dc

Please sign in to comment.