Skip to content
Snippets Groups Projects
Commit 4e229b01 authored by Sam Yates's avatar Sam Yates Committed by Ben Cumming
Browse files

Add KINETIC block rewriter (issue #63) (#95)

Adds a new KineticRewriter visitor that transforms (after semantic analysis) a parsed KINETIC procedure into an equivalent DERIVATIVE procedure. The visitor takes a ProcedureExpression and composes the equivalent procedure, available via the as_procedure() method on the visitor object.

Move common functinality for 'local' variable insertion during transformation phase to new files astmanip.?pp.
Add Expression method for directly setting scope.
Use scope_ptr type alias widely.
Implement correct clone() behaviour for DerivativeExpression
Implement KineticRewriter transforming visitor class.
Add equivalence test for KineticRewriter: the test incorporates a simple ad-hoc algebraic expression simplifier.
Add unit test to Parser.parse_binop to exercise bug #94
parent db5a7362
No related branches found
No related tags found
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment