Howdy.
This repo just popped up on my radar.
I'm doing something similar with kevinswiber/calypso.
You can find all the query language parsing code here: https://github.com/kevinswiber/calypso/tree/master/compiling
I'm using Jison to generate a SQL parser. It doesn't fully conform to any SQL standard, but it's a start.
The goal of Calypso is to provide a common query language that can be implemented on top of any queryable data source. I have drivers for MongoDB and a Backend-as-a-Service called Usergrid. Calypso was born out of another project. I still need to port over older CouchDB and Salesforce drivers.
It also has a data mapper associated with it for automatically hydrating query results into object models.
The source code is released under the MIT license (my employer, Apigee, holds the copyright).
Here's a usage example: https://gist.github.com/kevinswiber/44542186e5dbc5bd03c6
Anyway, the point is... there might be some code you can steal from Calypso to serve your interests. If so, have at it!
Cheers!
Howdy.
This repo just popped up on my radar.
I'm doing something similar with kevinswiber/calypso.
You can find all the query language parsing code here: https://github.com/kevinswiber/calypso/tree/master/compiling
I'm using Jison to generate a SQL parser. It doesn't fully conform to any SQL standard, but it's a start.
The goal of Calypso is to provide a common query language that can be implemented on top of any queryable data source. I have drivers for MongoDB and a Backend-as-a-Service called Usergrid. Calypso was born out of another project. I still need to port over older CouchDB and Salesforce drivers.
It also has a data mapper associated with it for automatically hydrating query results into object models.
The source code is released under the MIT license (my employer, Apigee, holds the copyright).
Here's a usage example: https://gist.github.com/kevinswiber/44542186e5dbc5bd03c6
Anyway, the point is... there might be some code you can steal from Calypso to serve your interests. If so, have at it!
Cheers!