I have been able to get some very simple parsing working but I seem to be stuck on the following spec.
specify { expect(subject.value_filter).to parse('type eq "work" and value co "@example.com"') }
The above test produces the following error:
|| Scim::Kit::V2::Filter
|| should parse "type eq \"work\" and value co \"@example.com\"" (FAILED - 1)
||
|| Failures:
||
|| 1) Scim::Kit::V2::Filter should parse "type eq \"work\" and value co \"@example.com\""
|| Failure/Error: specify { expect(subject.value_filter).to parse('type eq "work" and value co "@example.com"') }
||
|| SystemStackError:
|| stack level too deep
|| # ./spec/scim/kit/v2/filter_spec.rb:57:in `block (2 levels) in <top (required)>'
||
|| Finished in 0.00951 seconds (files took 0.55388 seconds to load)
|| 1 example, 1 failure
||
|| Failed examples:
||
|| rspec ./spec/scim/kit/v2/filter_spec.rb:57 # Scim::Kit::V2::Filter should parse "type eq \"work\" and value co \"@example.com\""
I'm not sure if the ABNF described above is an example of left recursion and if perhaps Parslet is the wrong tool for this problem.
I apologize in advance if this is the wrong forum for this question. Any guidance would be greatly appreciated. 🙏
I would go to StackOverflow for help, maintainers of open source software do not generally view questions disguised as issues logged on their software in the most favorable light.
According to https://kschiess.github.io/parslet/overview.html
I am trying to write a parser for the SCIM 2.0 filter syntax described here.
The parser that I have so far looks like:
link
I have been able to get some very simple parsing working but I seem to be stuck on the following spec.
The above test produces the following error:
I'm not sure if the ABNF described above is an example of
left recursion
and if perhapsParslet
is the wrong tool for this problem.I apologize in advance if this is the wrong forum for this question. Any guidance would be greatly appreciated. 🙏