Improve performance (part 2), make smaller, other fixes

Or, a lot of things yet again.

1. Prototypes are avoided. Method definitions are avoided at all costs in the
   renderer. C-like structs are exclusively used internally. This helps
   significantly in both speed and size.

2. The deferred implementation had a couple functions refactored into static
   equivalents.

3. Only 1 test fails now.

4. Several names were changed to be much smaller. Some of the exports were
   aliased. This was a pure size improvement for free.

5. Regexes are inlined. It's better to let the engine do the caching.

6. The version string was inlined. It's still at the top.

7. `this` is avoided as much as possible in the rendering.
This commit is contained in:
impinball 2015-12-15 12:07:54 -05:00
parent 0a744f6387
commit 0b21bd2bda
3 changed files with 574 additions and 588 deletions

1158
mithril.js

File diff suppressed because it is too large Load diff

2
mithril.min.js vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long