lutaml / lutaml-uml

UML module for LutaML
2 stars 2 forks source link

Parse failure in `// ...` comments #93

Closed ronaldtse closed 1 year ago

ronaldtse commented 2 years ago

The // ... comments until the end of line should not be parsed.

Right now this causes a parsing failure:

diagram IeeeMetadata {
  class X {
    // under <article>
  }
}

Error:

/Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-uml-0.4.1/lib/lutaml/uml/parsers/dsl.rb:32:in `rescue in parse': Failed to match sequence (WHITESPACE? DIAGRAM_DEFINITION) at line 1 char 1. (Lutaml::Uml::Parsers::ParsingError)
cause: Failed to match sequence (WHITESPACE? DIAGRAM_DEFINITION) at line 1 char 1.
`- Failed to match sequence (DIAGRAM_KEYWORD SPACES? name:CLASS_NAME DIAGRAM_BODY WHITESPACE?) at line 1 char 22.
   `- Failed to match sequence (SPACES? '{' WHITESPACE? members:(DIAGRAM_INNER_DEFINITION{0, }) '}') at line 8 char 29.
      `- Expected "}", but got "<" at line 30 char 12.
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-uml-0.4.1/lib/lutaml/uml/parsers/dsl.rb:23:in `parse'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-uml-0.4.1/lib/lutaml/uml/parsers/dsl.rb:20:in `parse'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/lib/lutaml/parser.rb:47:in `block in parse_into_document'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/lib/lutaml/parser.rb:47:in `map'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/lib/lutaml/parser.rb:47:in `parse_into_document'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/lib/lutaml/parser.rb:22:in `parse_into_document'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/lib/lutaml/command_line.rb:94:in `block in run'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/lib/lutaml/command_line.rb:87:in `each'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/lib/lutaml/command_line.rb:87:in `run'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/lib/lutaml/command_line.rb:21:in `run'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/exe/lutaml:22:in `<top (required)>'
    from /Users/me/.rbenv/versions/3.0.2/bin/lutaml:23:in `load'
    from /Users/me/.rbenv/versions/3.0.2/bin/lutaml:23:in `<main>'
/Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/parslet-2.0.0/lib/parslet/cause.rb:70:in `raise': Failed to match sequence (WHITESPACE? DIAGRAM_DEFINITION) at line 1 char 1. (Parslet::ParseFailed)
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/parslet-2.0.0/lib/parslet/atoms/base.rb:49:in `parse'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-uml-0.4.1/lib/lutaml/uml/parsers/dsl.rb:30:in `parse'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-uml-0.4.1/lib/lutaml/uml/parsers/dsl.rb:20:in `parse'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/lib/lutaml/parser.rb:47:in `block in parse_into_document'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/lib/lutaml/parser.rb:47:in `map'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/lib/lutaml/parser.rb:47:in `parse_into_document'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/lib/lutaml/parser.rb:22:in `parse_into_document'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/lib/lutaml/command_line.rb:94:in `block in run'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/lib/lutaml/command_line.rb:87:in `each'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/lib/lutaml/command_line.rb:87:in `run'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/lib/lutaml/command_line.rb:21:in `run'
    from /Users/me/.rbenv/versions/3.0.2/lib/ruby/gems/3.0.0/gems/lutaml-0.7.4/exe/lutaml:22:in `<top (required)>'
    from /Users/me/.rbenv/versions/3.0.2/bin/lutaml:23:in `load'
    from /Users/me/.rbenv/versions/3.0.2/bin/lutaml:23:in `<main>'
make: *** [images/IeeeMetadata.png] Error 1