Skip to content

Make ExpressionParser constant.

Made the expression parser constant. Originally the expression parser was caching the intermediate results in its rpn expression tree. Despite caching intermediate results in its members, the expression parser created many copies when operating on vectors. Now the caching in members is avoided and the amount of copying is significantly reduced. This is the first step to make the expression parser thread-safe. The proxy loaders still have to be made athenaMT compliant. The latter is still under discussion and will be addressed in a future merge request.

Merge request reports