Skip to content

Implement parsing to a list of tokens #695

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

Conversation

reid-spencer
Copy link
Contributor

Added to TopLevelParser:

  • def parseToTokens(input:RiddlParseInput): Either[Messages,List[Token]]

Added these case classes to AST as the set of possible results
returned from TopLevelParser.parseToTokens:

  • case class PunctuationTKN(at: At) extends Token
  • case class QuotedStringTKN(at: At) extends Token
  • case class ReadabilityTKN(at: At) extends Token
  • case class PredefinedTKN(at: At) extends Token
  • case class KeywordTKN(at: At) extends Token
  • case class CommentTKN(at: At) extends Token
  • case class LiteralStringTKN(at: At) extends Token
  • case class MarkdownLinesTKN(at: At) extends Token
  • case class IdentifierTKN(at: At) extends Token
  • case class OtherTKN(at: At) extends Token

This allows for distinguishing the basic kinds of input being parsed.

@reid-spencer reid-spencer self-assigned this Nov 23, 2024
@reid-spencer reid-spencer added the enhancement New feature or request label Nov 23, 2024
@reid-spencer reid-spencer linked an issue Nov 23, 2024 that may be closed by this pull request
Copy link

Please retry analysis of this Pull-Request directly on SonarQube Cloud

@coveralls
Copy link

coveralls commented Nov 23, 2024

Pull Request Test Coverage Report for Build 11990233828

Details

  • 72 of 98 (73.47%) changed or added relevant lines in 9 files are covered.
  • 84 unchanged lines in 24 files lost coverage.
  • Overall coverage decreased (-0.003%) to 73.429%

Changes Missing Coverage Covered Lines Changed/Added Lines %
language/shared/src/main/scala/com/ossuminc/riddl/language/parsing/ParsingContext.scala 12 14 85.71%
language/shared/src/main/scala/com/ossuminc/riddl/language/parsing/PredefTypes.scala 5 7 71.43%
language/shared/src/main/scala/com/ossuminc/riddl/language/parsing/Punctuation.scala 1 3 33.33%
language/shared/src/main/scala/com/ossuminc/riddl/language/parsing/Keywords.scala 1 4 25.0%
language/shared/src/main/scala/com/ossuminc/riddl/language/parsing/ExtensibleTopLevelParser.scala 19 24 79.17%
language/shared/src/main/scala/com/ossuminc/riddl/language/parsing/TokenStreamParser.scala 26 38 68.42%
Files with Coverage Reduction New Missed Lines %
language/shared/src/main/scala/com/ossuminc/riddl/language/parsing/ContextParser.scala 1 81.25%
language/shared/src/main/scala/com/ossuminc/riddl/language/parsing/ModuleParser.scala 1 90.91%
language/shared/src/main/scala/com/ossuminc/riddl/language/parsing/ExtensibleTopLevelParser.scala 1 53.33%
language/shared/src/main/scala/com/ossuminc/riddl/language/parsing/EntityParser.scala 1 89.47%
language/shared/src/main/scala/com/ossuminc/riddl/language/parsing/NebulaParser.scala 1 77.78%
language/shared/src/main/scala/com/ossuminc/riddl/language/parsing/ParsingErrors.scala 1 87.88%
language/shared/src/main/scala/com/ossuminc/riddl/language/parsing/RootParser.scala 1 77.78%
language/shared/src/main/scala/com/ossuminc/riddl/language/parsing/FunctionParser.scala 2 82.35%
language/shared/src/main/scala/com/ossuminc/riddl/language/parsing/StreamingParser.scala 2 90.16%
language/shared/src/main/scala/com/ossuminc/riddl/language/parsing/Keywords.scala 2 67.72%
Totals Coverage Status
Change from base Build 11987576559: -0.003%
Covered Lines: 4977
Relevant Lines: 6778

💛 - Coveralls

@reid-spencer reid-spencer merged commit 2747020 into main Nov 23, 2024
2 checks passed
@reid-spencer reid-spencer deleted the 694-feature-add-toplevelparser-method-for-returning-token-stream branch November 23, 2024 20:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[FEATURE] Add TopLevelParser method for returning Token stream
2 participants