Commit Graph

23 Commits

Author SHA1 Message Date
Tim Schaub d920d8e578 Test left-hand-side expression parsing 2013-06-25 12:11:46 -06:00
Tim Schaub 13d0b8b084 Provide ol.expression.parse method
This is the only method needed in the API.
2013-06-25 12:11:46 -06:00
Tim Schaub 3643ea164f Cast boolean and null before creating literal expression 2013-06-25 12:11:46 -06:00
Tim Schaub ce67aa2617 Make way for convenience functions in ol.expression package 2013-06-25 12:11:45 -06:00
Tim Schaub 7a1e69e288 Initial parsing tests 2013-06-25 12:11:45 -06:00
Tim Schaub cb9725bdfb Provide static method to check for valid operators 2013-06-25 12:11:45 -06:00
Tim Schaub 29b77a2dac Member expressions 2013-06-25 12:11:45 -06:00
Tim Schaub fbb028e15e Call expressions 2013-06-25 12:11:45 -06:00
Tim Schaub f050546fe2 Logical expressions 2013-06-25 12:11:44 -06:00
Tim Schaub 153df45f95 Math expressions
Just simple binary type expressions supported here.  These can be serialized in a variety of formats.  More complex operations to be supported by call expressions.
2013-06-25 12:11:44 -06:00
Tim Schaub b2ff793ea1 Comparison expressions 2013-06-25 12:11:44 -06:00
Tim Schaub 052b973b39 Reduce to a single literal 2013-06-25 12:11:44 -06:00
Tim Schaub 20b66fc447 Proper specs 2013-06-25 12:11:43 -06:00
Tim Schaub 0abcbb9854 Stray not 2013-06-25 12:11:43 -06:00
Tim Schaub a87ebfe97b Specific expression types 2013-06-25 12:11:43 -06:00
Tim Schaub 063b461ffd Fewer calls to charCodeAt 2013-06-25 12:11:43 -06:00
Tim Schaub f272350e00 Expose next and peek methods 2013-06-25 12:11:42 -06:00
Tim Schaub 5baa38b82c Test punctuator scanning 2013-06-25 12:11:42 -06:00
Tim Schaub 50f94911b1 Scan string literals 2013-06-25 12:11:42 -06:00
Tim Schaub 0844df8cc2 Scanning identifiers
This includes code that is likely not necessary.  The escape sequence scanning will likely not be used in our case, but I'm committing it here so it can be brought back if needed later.
2013-06-25 12:11:42 -06:00
Tim Schaub 040c80a5ad Expectations about token type 2013-06-25 12:11:42 -06:00
Tim Schaub 193cf4de50 Scan numeric literals 2013-06-25 12:11:41 -06:00
Tim Schaub a5343161bf Separate lexer 2013-06-25 12:11:41 -06:00