summaryrefslogtreecommitdiffstats
path: root/dimension/parse.c
Commit message (Collapse)AuthorAgeFilesLines
* Rename dmnsn_matrix_*_mul() to dmnsn_transform_*().Tavian Barnes2010-04-171-4/+4
|
* Warn on division by zero, instead of crashing.Tavian Barnes2010-04-171-6/+36
|
* Improve CSG and light handling.Tavian Barnes2010-04-101-6/+3
| | | | | | - Lights can be inside CSG objects - Lights can be modified by transformations - CSG objects can contain only one object
* New dmnsn_malloc() function, and friends.Tavian Barnes2010-04-071-39/+11
| | | | | | I'm tired of checking for malloc failures everywhere, considering it never happens. So just bail out whenever it does. A lot of stuff is guaranteed to succeed if it returns now.
* Whitespace fix.Tavian Barnes2010-03-231-1/+1
|
* Implement macro support.Tavian Barnes2010-03-231-1/+6
|
* Implement most vector functions.Tavian Barnes2010-03-231-2/+187
|
* Support the ternary operator.Tavian Barnes2010-03-221-0/+32
|
* Handle built-in vector IDs the same way as floats.Tavian Barnes2010-03-221-18/+51
|
* Add built-in float constants.Tavian Barnes2010-03-221-0/+32
|
* Support logical ! operator.Tavian Barnes2010-03-221-0/+9
|
* Support max() and min().Tavian Barnes2010-03-201-0/+38
|
* Implement almost all float functions.Tavian Barnes2010-03-201-5/+186
|
* A bunch more float functions.Tavian Barnes2010-03-201-14/+143
|
* Make float equality comparisons more relaxed.Tavian Barnes2010-03-191-4/+8
|
* Support exp().Tavian Barnes2010-03-191-0/+9
|
* Clean up dmnsn_eval_{unary,binary}().Tavian Barnes2010-03-191-75/+88
|
* Check for realloc() failures.Tavian Barnes2010-03-121-0/+2
|
* Check for malloc() failures.Tavian Barnes2010-03-121-0/+2
|
* Use PATRICIA tries for symbol table scopes.Tavian Barnes2010-03-121-146/+309
|
* Implement unit vectors.Tavian Barnes2010-03-091-0/+52
|
* Fix locations for expanded identifiers in dmnsn_eval().Tavian Barnes2010-03-081-1/+5
|
* Add printf-style warnings to dmnsn_diagnostic, and fix bugs it found.Tavian Barnes2010-02-111-2/+3
|
* New dmnsn_assert() macro for invariant violations.Tavian Barnes2010-02-091-6/+3
|
* Support #include.Tavian Barnes2010-02-091-0/+8
|
* Implement #while.Tavian Barnes2010-02-031-1/+1
|
* Use dmnsn_new_ast_integer() in parsers.Tavian Barnes2010-02-021-1/+3
|
* Implement #if.Tavian Barnes2010-02-021-15/+177
|
* Fix dmnsn_eval_unary() leak.Tavian Barnes2010-02-021-1/+62
|
* Fix up license blurbs and copyright year.Tavian Barnes2010-01-271-1/+1
|
* Support #declare, #local, and #undef.Tavian Barnes2009-12-211-157/+238
|
* Make symbol table semantics line up with povray's.Tavian Barnes2009-12-191-6/+65
|
* Implement a symbol table.Tavian Barnes2009-12-191-0/+582
|
* Begin bison implementation of parser.Tavian Barnes2009-11-231-803/+0
|
* Fix parsing memory leaks, remove debug.Tavian Barnes2009-11-201-13/+23
|
* Evaluate arithmetic expressions during parsing when possible.Tavian Barnes2009-11-201-19/+188
| | | | | This is needed for conditionals to work, and for declared identifiers to be evaluated only once.
* Add file, line, and column information to astnodes.Tavian Barnes2009-11-051-24/+29
|
* Some much-needed comments in parse.c.Tavian Barnes2009-11-051-5/+53
|
* Parse arithmetic expressions.Tavian Barnes2009-11-041-55/+236
|
* Handle spheres.Tavian Barnes2009-11-041-3/+48
|
* Implement dmnsn_print_astree_sexpr().Tavian Barnes2009-10-311-14/+90
|
* Initialize `i' in dmnsn_parse().Tavian Barnes2009-10-301-0/+1
|
* Refactor parsing and realization a bit.Tavian Barnes2009-10-301-5/+7
|
* (Sort of) parse boxes.Tavian Barnes2009-10-301-2/+229
|
* Skeleton of parser and realizer.Tavian Barnes2009-10-291-0/+39