benchmark script
Library
Time
bbmustache
64638
mustache.erl
932479
Check the reference implementation
⚠️ For libraries other than bbmustache, there is a possibility that there is a miss.
comments
https://github.com/mustache/spec/tree/v1.1.3/specs/comments.yml
bbmustache
mustache.erl
Inline
✅
✅
Multiline
✅
✅
Standalone
✅
Indented Standalone
✅
Standalone Line Endings
✅
Standalone Without Previous Line
✅
Standalone Without Newline
✅
Multiline Standalone
✅
Indented Multiline Standalone
✅
Indented Inline
✅
✅
Surrounding Whitespace
✅
✅
https://github.com/mustache/spec/tree/v1.1.3/specs/delimiters.yml
bbmustache
mustache.erl
Pair Behavior
✅
Special Characters
✅
Sections
✅
Inverted Sections
✅
Partial Inheritence
✅
Post-Partial Behavior
✅
Surrounding Whitespace
✅
Outlying Whitespace (Inline)
✅
Standalone Tag
✅
Indented Standalone Tag
✅
Standalone Line Endings
✅
Standalone Without Previous Line
✅
Standalone Without Newline
✅
Pair with Padding
✅
https://github.com/mustache/spec/tree/v1.1.3/specs/interpolation.yml
bbmustache
mustache.erl
No Interpolation
✅
✅
Basic Interpolation
✅
✅
HTML Escaping
✅
Triple Mustache
✅
✅
Ampersand
✅
✅
Basic Integer Interpolation
✅
✅
Triple Mustache Integer Interpolation
✅
✅
Ampersand Integer Interpolation
✅
✅
Basic Decimal Interpolation
✅
✅
Triple Mustache Decimal Interpolation
✅
✅
Ampersand Decimal Interpolation
✅
✅
Basic Context Miss Interpolation
✅
✅
Triple Mustache Context Miss Interpolation
✅
✅
Ampersand Context Miss Interpolation
✅
✅
Dotted Names - Basic Interpolation
✅
Dotted Names - Triple Mustache Interpolation
✅
Dotted Names - Ampersand Interpolation
✅
Dotted Names - Arbitrary Depth
✅
Dotted Names - Broken Chains
✅
Dotted Names - Broken Chain Resolution
✅
Dotted Names - Initial Resolution
✅
Dotted Names - Context Precedence
✅
Interpolation - Surrounding Whitespace
✅
✅
Triple Mustache - Surrounding Whitespace
✅
✅
Ampersand - Surrounding Whitespace
✅
✅
Interpolation - Standalone
✅
✅
Triple Mustache - Standalone
✅
✅
Ampersand - Standalone
✅
✅
Interpolation With Padding
✅
✅
Triple Mustache With Padding
✅
✅
Ampersand With Padding
✅
✅
https://github.com/mustache/spec/tree/v1.1.3/specs/inverted.yml
bbmustache
mustache.erl
Falsey
✅
✅
Truthy
✅
✅
Context
✅
✅
List
✅
✅
Empty List
✅
✅
Doubled
✅
✅
Nested (Falsey)
✅
Nested (Truthy)
✅
Context Misses
✅
✅
Dotted Names - Truthy
✅
Dotted Names - Falsey
✅
Dotted Names - Broken Chains
✅
Surrounding Whitespace
✅
Internal Whitespace
✅
Indented Inline Sections
✅
Standalone Lines
✅
✅
Standalone Indented Lines
✅
Standalone Line Endings
✅
Standalone Without Previous Line
✅
Standalone Without Newline
✅
Padding
✅
✅
https://github.com/mustache/spec/tree/v1.1.3/specs/partials.yml
bbmustache
mustache.erl
Basic Behavior
✅
Failed Lookup
✅
Context
✅
Recursion
✅
Surrounding Whitespace
✅
Inline Indentation
✅
Standalone Line Endings
✅
Standalone Without Previous Line
✅
Standalone Without Newline
✅
Standalone Indentation
✅
Padding Whitespace
✅
https://github.com/mustache/spec/tree/v1.1.3/specs/sections.yml
bbmustache
mustache.erl
Truthy
✅
✅
Falsey
✅
✅
Context
✅
Deeply Nested Contexts
✅
List
✅
Empty List
✅
✅
Doubled
✅
✅
Nested (Truthy)
✅
Nested (Falsey)
✅
Context Misses
✅
✅
Implicit Iterator - String
✅
Implicit Iterator - Integer
✅
Implicit Iterator - Decimal
✅
Implicit Iterator - Array
✅
Dotted Names - Truthy
✅
Dotted Names - Falsey
✅
Dotted Names - Broken Chains
✅
Surrounding Whitespace
✅
Internal Whitespace
✅
Indented Inline Sections
✅
Standalone Lines
✅
✅
Indented Standalone Lines
✅
Standalone Line Endings
✅
Standalone Without Previous Line
✅
Standalone Without Newline
✅
Padding
✅
✅
https://github.com/mustache/spec/tree/v1.1.3/specs/~lambdas.yml
bbmustache
mustache.erl
Interpolation
Interpolation - Expansion
Interpolation - Alternate Delimiters
Interpolation - Multiple Calls
Escaping
Section
Section - Expansion
Section - Alternate Delimiters
Section - Multiple Calls
Inverted Section
✅
✅