You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The parser does also maintain a list of "future" reserved words, for somewhat similar problematic parsing situations, e.g. OUTPUT, but those words generally exist on at least one of the reserved words lists already.
I do understand (exceptionally well considering some of the more advanced statement parsing logic I've been adding to the library, along with logic within dependent libraries, e.g. https://github.com/bruce-dunwiddie/tsql-color and https://github.com/bruce-dunwiddie/tsql-depends) how this might make some more advanced parsing logic that you're probably trying to implement more complicated and problematic.
Part of the challenge in maintaining this library is finding the best balance between ease of use, and matching an official spec, so I put considerable thought into some choices when there's no obvious correct decision. And even then I sometimes have to back out of what I previously thought was a good decision.
Consider the following T-SQL statement:
SELECT * FROM Foo CROSS APPLY ( SELECT * FROM Bar ) ca
The parser returns tokens:
'APPLY' is mistakenly considered as an identifier instead of the T-SQL keyword.
BR
Antoni
The text was updated successfully, but these errors were encountered: