Nikita Popov 8f623fb241 Use closures instead of methods for semantic actions
The dispatch using $this->{'reduceRule' . $rule}() is very expensive
because it involves
 * One allocation when converting $rule to a string
 * Another allocation when concatenating the two strings
 * Lowercasing during the method call
 * Various uncached method checks, e.g. visibility.

Using an array of closures for semantic action dispatch is
significantly more efficient.
2017-02-05 11:58:45 +01:00
..
2016-10-16 22:12:46 +02:00
2017-02-03 21:54:48 +01:00
2017-01-29 23:20:53 +01:00
2017-02-03 21:54:48 +01:00
2017-01-19 20:55:08 +01:00
2016-10-16 22:12:46 +02:00
2016-10-21 23:26:51 +02:00
2017-01-25 23:32:50 +01:00
2017-01-29 23:20:53 +01:00
2015-07-14 21:11:54 +02:00