├── app
├── empty
└── home
│ ├── home.html
│ └── home.php
├── assets
└── empty
├── bin
└── empty
├── core
├── empty
├── page.php
└── functions.php
├── config.php
├── README.md
├── composer.json
└── vendor
├── twig
└── twig
│ ├── test
│ ├── Twig
│ │ └── Tests
│ │ │ ├── Loader
│ │ │ └── Fixtures
│ │ │ │ ├── normal
│ │ │ │ └── index.html
│ │ │ │ ├── named
│ │ │ │ └── index.html
│ │ │ │ ├── normal_bis
│ │ │ │ └── index.html
│ │ │ │ ├── normal_ter
│ │ │ │ └── index.html
│ │ │ │ ├── named_bis
│ │ │ │ └── index.html
│ │ │ │ ├── named_ter
│ │ │ │ └── index.html
│ │ │ │ ├── normal_final
│ │ │ │ └── index.html
│ │ │ │ ├── named_final
│ │ │ │ └── index.html
│ │ │ │ ├── named_quater
│ │ │ │ └── named_absolute.html
│ │ │ │ ├── inheritance
│ │ │ │ ├── parent.html.twig
│ │ │ │ ├── spare_parent.html.twig
│ │ │ │ ├── array_inheritance_empty_parent.html.twig
│ │ │ │ ├── array_inheritance_null_parent.html.twig
│ │ │ │ ├── array_inheritance_valid_parent.html.twig
│ │ │ │ └── array_inheritance_nonexistent_parent.html.twig
│ │ │ │ └── themes
│ │ │ │ ├── theme2
│ │ │ │ └── blocks.html.twig
│ │ │ │ └── theme1
│ │ │ │ └── blocks.html.twig
│ │ │ ├── Fixtures
│ │ │ ├── errors
│ │ │ │ ├── base.html
│ │ │ │ └── index.html
│ │ │ ├── tags
│ │ │ │ ├── special_chars.test
│ │ │ │ ├── raw
│ │ │ │ │ ├── basic.test
│ │ │ │ │ ├── mixed_usage_with_raw.test
│ │ │ │ │ └── whitespace_control.test
│ │ │ │ ├── verbatim
│ │ │ │ │ ├── basic.test
│ │ │ │ │ ├── mixed_usage_with_raw.test
│ │ │ │ │ └── whitespace_control.test
│ │ │ │ ├── block
│ │ │ │ │ ├── special_chars.test
│ │ │ │ │ ├── basic.test
│ │ │ │ │ └── block_unique_name.test
│ │ │ │ ├── set
│ │ │ │ │ ├── capture-empty.test
│ │ │ │ │ ├── capture.test
│ │ │ │ │ ├── expression.test
│ │ │ │ │ └── basic.test
│ │ │ │ ├── filter
│ │ │ │ │ ├── json_encode.test
│ │ │ │ │ ├── multiple.test
│ │ │ │ │ ├── basic.test
│ │ │ │ │ ├── with_for_tag.test
│ │ │ │ │ ├── nested.test
│ │ │ │ │ └── with_if_tag.test
│ │ │ │ ├── use
│ │ │ │ │ ├── deep_empty.test
│ │ │ │ │ ├── basic.test
│ │ │ │ │ ├── aliases.test
│ │ │ │ │ ├── deep.test
│ │ │ │ │ ├── multiple.test
│ │ │ │ │ ├── multiple_aliases.test
│ │ │ │ │ ├── parent_block2.test
│ │ │ │ │ ├── inheritance2.test
│ │ │ │ │ ├── inheritance.test
│ │ │ │ │ └── parent_block.test
│ │ │ │ ├── include
│ │ │ │ │ ├── missing.test
│ │ │ │ │ ├── basic.test
│ │ │ │ │ ├── templates_as_array.test
│ │ │ │ │ ├── template_instance.test
│ │ │ │ │ ├── expression.test
│ │ │ │ │ ├── with_variables.test
│ │ │ │ │ ├── ignore_missing.test
│ │ │ │ │ ├── missing_nested.test
│ │ │ │ │ └── only.test
│ │ │ │ ├── inheritance
│ │ │ │ │ ├── empty.test
│ │ │ │ │ ├── parent_in_a_block.test
│ │ │ │ │ ├── extends_as_array.test
│ │ │ │ │ ├── extends_as_array_with_empty_name.test
│ │ │ │ │ ├── extends_as_array_with_null_name.test
│ │ │ │ │ ├── basic.test
│ │ │ │ │ ├── dynamic.test
│ │ │ │ │ ├── parent_without_extends.test
│ │ │ │ │ ├── parent.test
│ │ │ │ │ ├── parent_without_extends_but_traits.test
│ │ │ │ │ ├── parent_change.test
│ │ │ │ │ ├── nested_blocks_parent_only.test
│ │ │ │ │ ├── template_instance.test
│ │ │ │ │ ├── multiple.test
│ │ │ │ │ ├── nested_inheritance.test
│ │ │ │ │ ├── conditional.test
│ │ │ │ │ ├── parent_nested.test
│ │ │ │ │ ├── nested_blocks.test
│ │ │ │ │ ├── parent_isolation.test
│ │ │ │ │ ├── multiple_dynamic.test
│ │ │ │ │ ├── block_expr.test
│ │ │ │ │ └── block_expr2.test
│ │ │ │ ├── for
│ │ │ │ │ ├── keys.test
│ │ │ │ │ ├── values.test
│ │ │ │ │ ├── keys_and_values.test
│ │ │ │ │ ├── loop_context_local.test
│ │ │ │ │ ├── loop_not_defined_cond.test
│ │ │ │ │ ├── loop_not_defined.test
│ │ │ │ │ ├── condition.test
│ │ │ │ │ ├── context.test
│ │ │ │ │ ├── inner_variables.test
│ │ │ │ │ ├── nested_else.test
│ │ │ │ │ ├── recursive.test
│ │ │ │ │ ├── loop_context.test
│ │ │ │ │ └── else.test
│ │ │ │ ├── autoescape
│ │ │ │ │ ├── double_escaping.test
│ │ │ │ │ ├── raw.test
│ │ │ │ │ ├── blocks.test
│ │ │ │ │ ├── strategy.test
│ │ │ │ │ ├── nested.test
│ │ │ │ │ ├── objects.test
│ │ │ │ │ ├── with_filters_arguments.test
│ │ │ │ │ └── basic.test
│ │ │ │ ├── macro
│ │ │ │ │ ├── special_chars.test
│ │ │ │ │ ├── super_globals.test
│ │ │ │ │ ├── global.test
│ │ │ │ │ ├── endmacro_name.test
│ │ │ │ │ ├── from.test
│ │ │ │ │ ├── basic.test
│ │ │ │ │ ├── self_import.test
│ │ │ │ │ └── external.test
│ │ │ │ ├── spaceless
│ │ │ │ │ └── simple.test
│ │ │ │ ├── sandbox
│ │ │ │ │ ├── not_valid1.test
│ │ │ │ │ ├── not_valid2.test
│ │ │ │ │ └── simple.test
│ │ │ │ ├── from.test
│ │ │ │ ├── if
│ │ │ │ │ ├── expression.test
│ │ │ │ │ └── basic.test
│ │ │ │ └── embed
│ │ │ │ │ ├── error_line.test
│ │ │ │ │ ├── basic.test
│ │ │ │ │ ├── nested.test
│ │ │ │ │ └── multiple.test
│ │ │ ├── filters
│ │ │ │ ├── special_chars.test
│ │ │ │ ├── escape.test
│ │ │ │ ├── escape_non_supported_charset.test
│ │ │ │ ├── format.test
│ │ │ │ ├── dynamic_filter.test
│ │ │ │ ├── replace.test
│ │ │ │ ├── sort.test
│ │ │ │ ├── escape_html_attr.test
│ │ │ │ ├── join.test
│ │ │ │ ├── length_utf8.test
│ │ │ │ ├── json_encode.test
│ │ │ │ ├── last.test
│ │ │ │ ├── convert_encoding.test
│ │ │ │ ├── length.test
│ │ │ │ ├── first.test
│ │ │ │ ├── trim.test
│ │ │ │ ├── round.test
│ │ │ │ ├── date_default_format.test
│ │ │ │ ├── force_escape.test
│ │ │ │ ├── number_format.test
│ │ │ │ ├── date_modify.test
│ │ │ │ ├── merge.test
│ │ │ │ ├── nl2br.test
│ │ │ │ ├── date_default_format_interval.test
│ │ │ │ ├── date_namedargs.test
│ │ │ │ ├── reverse.test
│ │ │ │ ├── abs.test
│ │ │ │ ├── number_format_default.test
│ │ │ │ ├── split.test
│ │ │ │ ├── split_utf8.test
│ │ │ │ ├── date_interval.test
│ │ │ │ ├── urlencode.test
│ │ │ │ ├── urlencode_deprecated.test
│ │ │ │ ├── batch_with_empty_fill.test
│ │ │ │ ├── batch_with_fill.test
│ │ │ │ ├── batch_float.test
│ │ │ │ └── batch.test
│ │ │ ├── functions
│ │ │ │ ├── special_chars.test
│ │ │ │ ├── range.test
│ │ │ │ ├── dynamic_function.test
│ │ │ │ ├── include
│ │ │ │ │ ├── missing.test
│ │ │ │ │ ├── autoescaping.test
│ │ │ │ │ ├── assignment.test
│ │ │ │ │ ├── basic.test
│ │ │ │ │ ├── template_instance.test
│ │ │ │ │ ├── templates_as_array.test
│ │ │ │ │ ├── expression.test
│ │ │ │ │ ├── with_variables.test
│ │ │ │ │ ├── sandbox.test
│ │ │ │ │ ├── ignore_missing.test
│ │ │ │ │ ├── missing_nested.test
│ │ │ │ │ └── with_context.test
│ │ │ │ ├── max.test
│ │ │ │ ├── min.test
│ │ │ │ ├── source.test
│ │ │ │ ├── constant.test
│ │ │ │ ├── block.test
│ │ │ │ ├── dump.test
│ │ │ │ ├── cycle.test
│ │ │ │ ├── date_namedargs.test
│ │ │ │ ├── template_from_string.test
│ │ │ │ ├── dump_array.test
│ │ │ │ └── attribute.test
│ │ │ ├── expressions
│ │ │ │ ├── grouping.test
│ │ │ │ ├── ternary_operator_noelse.test
│ │ │ │ ├── ternary_operator_nothen.test
│ │ │ │ ├── unary_precedence.test
│ │ │ │ ├── unary.test
│ │ │ │ ├── strings.test
│ │ │ │ ├── negative_numbers.test
│ │ │ │ ├── bitwise.test
│ │ │ │ ├── matches.test
│ │ │ │ ├── two_word_operators_as_variables.test
│ │ │ │ ├── array_call.test
│ │ │ │ ├── literals.test
│ │ │ │ ├── operators_as_variables.test
│ │ │ │ ├── comparison.test
│ │ │ │ ├── divisibleby.test
│ │ │ │ ├── postfix.test
│ │ │ │ ├── sameas.test
│ │ │ │ ├── ternary_operator.test
│ │ │ │ ├── magic_call.test
│ │ │ │ ├── method_call.test
│ │ │ │ ├── dotdot.test
│ │ │ │ ├── ends_with.test
│ │ │ │ ├── starts_with.test
│ │ │ │ ├── binary.test
│ │ │ │ └── unary_macro_arguments.test
│ │ │ ├── regression
│ │ │ │ ├── empty_token.test
│ │ │ │ ├── strings_like_numbers.test
│ │ │ │ ├── multi_word_tests.test
│ │ │ │ ├── combined_debug_info.test
│ │ │ │ ├── issue_1143.test
│ │ │ │ └── simple_xml_element.test
│ │ │ ├── tests
│ │ │ │ ├── odd.test
│ │ │ │ ├── even.test
│ │ │ │ ├── in_with_objects.test
│ │ │ │ ├── constant.test
│ │ │ │ ├── iterable.test
│ │ │ │ └── array.test
│ │ │ ├── exceptions
│ │ │ │ ├── undefined_parent.test
│ │ │ │ ├── undefined_trait.test
│ │ │ │ ├── multiline_tag_with_undefined_variable.test
│ │ │ │ ├── multiline_function_with_undefined_variable.test
│ │ │ │ ├── multiline_function_with_unknown_argument.test
│ │ │ │ ├── multiline_array_with_undefined_variable_again.test
│ │ │ │ ├── unclosed_tag.test
│ │ │ │ └── multiline_array_with_undefined_variable.test
│ │ │ ├── macros
│ │ │ │ ├── reserved_variables.test
│ │ │ │ ├── with_filters.test
│ │ │ │ ├── default_values.test
│ │ │ │ ├── nested_calls.test
│ │ │ │ └── simple.test
│ │ │ └── autoescape
│ │ │ │ └── filename.test
│ │ │ ├── Node
│ │ │ ├── Expression
│ │ │ │ ├── PHP53
│ │ │ │ │ ├── TestInclude.php
│ │ │ │ │ ├── FilterInclude.php
│ │ │ │ │ └── FunctionInclude.php
│ │ │ │ ├── AssignNameTest.php
│ │ │ │ ├── ConstantTest.php
│ │ │ │ ├── ParentTest.php
│ │ │ │ └── Unary
│ │ │ │ │ ├── NotTest.php
│ │ │ │ │ └── PosTest.php
│ │ │ ├── TextTest.php
│ │ │ ├── BlockReferenceTest.php
│ │ │ ├── PrintTest.php
│ │ │ └── DoTest.php
│ │ │ ├── AutoloaderTest.php
│ │ │ └── Profiler
│ │ │ └── Dumper
│ │ │ └── TextTest.php
│ └── bootstrap.php
│ ├── .gitignore
│ ├── ext
│ └── twig
│ │ ├── config.w32
│ │ ├── config.m4
│ │ └── .gitignore
│ ├── doc
│ ├── filters
│ │ ├── lower.rst
│ │ ├── upper.rst
│ │ ├── length.rst
│ │ ├── keys.rst
│ │ ├── capitalize.rst
│ │ ├── title.rst
│ │ ├── abs.rst
│ │ ├── sort.rst
│ │ ├── striptags.rst
│ │ ├── format.rst
│ │ ├── replace.rst
│ │ ├── nl2br.rst
│ │ ├── join.rst
│ │ ├── index.rst
│ │ ├── json_encode.rst
│ │ ├── last.rst
│ │ ├── first.rst
│ │ ├── trim.rst
│ │ ├── date_modify.rst
│ │ └── convert_encoding.rst
│ ├── tests
│ │ ├── odd.rst
│ │ ├── even.rst
│ │ ├── index.rst
│ │ ├── null.rst
│ │ ├── empty.rst
│ │ ├── divisibleby.rst
│ │ ├── sameas.rst
│ │ ├── iterable.rst
│ │ ├── constant.rst
│ │ └── defined.rst
│ ├── tags
│ │ ├── do.rst
│ │ ├── from.rst
│ │ ├── index.rst
│ │ ├── flush.rst
│ │ ├── block.rst
│ │ ├── filter.rst
│ │ ├── verbatim.rst
│ │ └── sandbox.rst
│ ├── functions
│ │ ├── index.rst
│ │ ├── block.rst
│ │ ├── min.rst
│ │ ├── max.rst
│ │ ├── constant.rst
│ │ ├── source.rst
│ │ ├── parent.rst
│ │ ├── cycle.rst
│ │ └── attribute.rst
│ └── index.rst
│ ├── .editorconfig
│ ├── lib
│ └── Twig
│ │ ├── Node
│ │ ├── Body.php
│ │ ├── Expression
│ │ │ ├── Binary
│ │ │ │ ├── Equal.php
│ │ │ │ ├── Less.php
│ │ │ │ ├── Greater.php
│ │ │ │ ├── LessEqual.php
│ │ │ │ ├── NotEqual.php
│ │ │ │ ├── GreaterEqual.php
│ │ │ │ ├── Add.php
│ │ │ │ ├── And.php
│ │ │ │ ├── Div.php
│ │ │ │ ├── Mod.php
│ │ │ │ ├── Mul.php
│ │ │ │ ├── Or.php
│ │ │ │ ├── Sub.php
│ │ │ │ ├── Concat.php
│ │ │ │ ├── BitwiseOr.php
│ │ │ │ ├── BitwiseAnd.php
│ │ │ │ ├── BitwiseXor.php
│ │ │ │ ├── Matches.php
│ │ │ │ └── FloorDiv.php
│ │ │ ├── Unary
│ │ │ │ ├── Neg.php
│ │ │ │ ├── Not.php
│ │ │ │ └── Pos.php
│ │ │ ├── Constant.php
│ │ │ ├── TempName.php
│ │ │ ├── AssignName.php
│ │ │ ├── Test
│ │ │ │ ├── Null.php
│ │ │ │ ├── Odd.php
│ │ │ │ ├── Even.php
│ │ │ │ ├── Sameas.php
│ │ │ │ └── Divisibleby.php
│ │ │ └── Unary.php
│ │ ├── Expression.php
│ │ └── Flush.php
│ │ ├── NodeOutputInterface.php
│ │ ├── Sandbox
│ │ ├── SecurityError.php
│ │ ├── SecurityPolicyInterface.php
│ │ └── SecurityNotAllowedTagError.php
│ │ ├── Error
│ │ ├── Runtime.php
│ │ └── Syntax.php
│ │ ├── TestCallableInterface.php
│ │ ├── FilterCallableInterface.php
│ │ ├── FunctionCallableInterface.php
│ │ ├── TestInterface.php
│ │ ├── NodeInterface.php
│ │ ├── TokenParser.php
│ │ ├── ExistsLoaderInterface.php
│ │ ├── Extension
│ │ └── Optimizer.php
│ │ ├── Test
│ │ ├── Node.php
│ │ └── Function.php
│ │ ├── ParserInterface.php
│ │ ├── Test.php
│ │ ├── Filter
│ │ ├── Node.php
│ │ └── Function.php
│ │ ├── LexerInterface.php
│ │ ├── Function
│ │ └── Node.php
│ │ └── Markup.php
│ ├── README.rst
│ ├── phpunit.xml.dist
│ └── .travis.yml
├── composer
├── autoload_psr4.php
├── autoload_classmap.php
└── autoload_namespaces.php
└── autoload.php
/app/empty:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/empty:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/bin/empty:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/core/empty:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/config.php:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # samanta
2 | This is my nerdy tribute to my loved pet, Samanta
3 |
--------------------------------------------------------------------------------
/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "require": {
3 | "twig/twig": "~1.0"
4 | }
5 | }
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal/index.html:
--------------------------------------------------------------------------------
1 | path
2 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named/index.html:
--------------------------------------------------------------------------------
1 | named path
2 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal_bis/index.html:
--------------------------------------------------------------------------------
1 | path (bis)
2 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal_ter/index.html:
--------------------------------------------------------------------------------
1 | path (ter)
2 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_bis/index.html:
--------------------------------------------------------------------------------
1 | named path (bis)
2 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_ter/index.html:
--------------------------------------------------------------------------------
1 | named path (ter)
2 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/normal_final/index.html:
--------------------------------------------------------------------------------
1 | path (final)
2 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/errors/base.html:
--------------------------------------------------------------------------------
1 | {% block content %}{% endblock %}
2 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_final/index.html:
--------------------------------------------------------------------------------
1 | named path (final)
2 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/named_quater/named_absolute.html:
--------------------------------------------------------------------------------
1 | named path (quater)
2 |
--------------------------------------------------------------------------------
/vendor/twig/twig/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 | /composer.lock
3 | /ext/twig/autom4te.cache/
4 | /phpunit.xml
5 | /vendor
6 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/parent.html.twig:
--------------------------------------------------------------------------------
1 | {% block body %}VALID{% endblock %}
2 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/spare_parent.html.twig:
--------------------------------------------------------------------------------
1 | {% block body %}SPARE PARENT{% endblock %}
2 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/special_chars.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "§" custom tag
3 | --TEMPLATE--
4 | {% § %}
5 | --DATA--
6 | return array()
7 | --EXPECT--
8 | §
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/themes/theme2/blocks.html.twig:
--------------------------------------------------------------------------------
1 | {% use '@default_theme/blocks.html.twig' %}
2 |
3 | {% block b2 %}block from theme 2{% endblock %}
4 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/themes/theme1/blocks.html.twig:
--------------------------------------------------------------------------------
1 | {% block b1 %}block from theme 1{% endblock %}
2 |
3 | {% block b2 %}block from theme 1{% endblock %}
4 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/special_chars.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "§" custom filter
3 | --TEMPLATE--
4 | {{ 'foo'|§ }}
5 | --DATA--
6 | return array()
7 | --EXPECT--
8 | §foo§
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/special_chars.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "§" custom function
3 | --TEMPLATE--
4 | {{ §('foo') }}
5 | --DATA--
6 | return array()
7 | --EXPECT--
8 | §foo§
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/array_inheritance_empty_parent.html.twig:
--------------------------------------------------------------------------------
1 | {% extends ['','parent.html.twig'] %}
2 |
3 | {% block body %}{{ parent() }} Child{% endblock %}
4 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/escape.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "escape" filter
3 | --TEMPLATE--
4 | {{ "foo
"|e }}
5 | --DATA--
6 | return array()
7 | --EXPECT--
8 | foo <br />
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/array_inheritance_null_parent.html.twig:
--------------------------------------------------------------------------------
1 | {% extends [null,'parent.html.twig'] %}
2 |
3 | {% block body %}{{ parent() }} Child{% endblock %}
4 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Node/Expression/PHP53/TestInclude.php:
--------------------------------------------------------------------------------
1 | addTest(new Twig_SimpleTest('anonymous', function () {}));
5 |
6 | return $env;
7 |
--------------------------------------------------------------------------------
/vendor/twig/twig/ext/twig/config.w32:
--------------------------------------------------------------------------------
1 | // vim:ft=javascript
2 |
3 | ARG_ENABLE("twig", "Twig support", "no");
4 |
5 | if (PHP_TWIG != "no") {
6 | AC_DEFINE('HAVE_TWIG', 1);
7 | EXTENSION('twig', 'twig.c');
8 | }
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/errors/index.html:
--------------------------------------------------------------------------------
1 | {% extends 'base.html' %}
2 | {% block content %}
3 | {{ foo.bar }}
4 | {% endblock %}
5 | {% block foo %}
6 | {{ foo.bar }}
7 | {% endblock %}
8 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/grouping.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports grouping of expressions
3 | --TEMPLATE--
4 | {{ (2 + 2) / 2 }}
5 | --DATA--
6 | return array()
7 | --EXPECT--
8 | 2
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Node/Expression/PHP53/FilterInclude.php:
--------------------------------------------------------------------------------
1 | addFilter(new Twig_SimpleFilter('anonymous', function () {}));
5 |
6 | return $env;
7 |
--------------------------------------------------------------------------------
/vendor/composer/autoload_psr4.php:
--------------------------------------------------------------------------------
1 | addFunction(new Twig_SimpleFunction('anonymous', function () {}));
5 |
6 | return $env;
7 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/range.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "range" function
3 | --TEMPLATE--
4 | {{ range(low=0+1, high=10+0, step=2)|join(',') }}
5 | --DATA--
6 | return array()
7 | --EXPECT--
8 | 1,3,5,7,9
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/array_inheritance_valid_parent.html.twig:
--------------------------------------------------------------------------------
1 | {% extends ['parent.html.twig','spare_parent.html.twig'] %}
2 |
3 | {% block body %}{{ parent() }} Child{% endblock %}
4 |
--------------------------------------------------------------------------------
/vendor/autoload.php:
--------------------------------------------------------------------------------
1 | 'foo')
7 | --EXPECT--
8 | foo0foo
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/odd.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "odd" test
3 | --TEMPLATE--
4 | {{ 1 is odd ? 'ok' : 'ko' }}
5 | {{ 2 is odd ? 'ko' : 'ok' }}
6 | --DATA--
7 | return array()
8 | --EXPECT--
9 | ok
10 | ok
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Loader/Fixtures/inheritance/array_inheritance_nonexistent_parent.html.twig:
--------------------------------------------------------------------------------
1 | {% extends ['nonexistent.html.twig','parent.html.twig'] %}
2 |
3 | {% block body %}{{ parent() }} Child{% endblock %}
4 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/escape_non_supported_charset.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "escape" filter
3 | --TEMPLATE--
4 | {{ "愛していますか?
"|e }}
5 | --DATA--
6 | return array()
7 | --EXPECT--
8 | 愛していますか? <br />
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/format.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "format" filter
3 | --TEMPLATE--
4 | {{ string|format(foo, 3) }}
5 | --DATA--
6 | return array('string' => '%s/%d', 'foo' => 'bar')
7 | --EXPECT--
8 | bar/3
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/lower.rst:
--------------------------------------------------------------------------------
1 | ``lower``
2 | =========
3 |
4 | The ``lower`` filter converts a value to lowercase:
5 |
6 | .. code-block:: jinja
7 |
8 | {{ 'WELCOME'|lower }}
9 |
10 | {# outputs 'welcome' #}
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/upper.rst:
--------------------------------------------------------------------------------
1 | ``upper``
2 | =========
3 |
4 | The ``upper`` filter converts a value to uppercase:
5 |
6 | .. code-block:: jinja
7 |
8 | {{ 'welcome'|upper }}
9 |
10 | {# outputs 'WELCOME' #}
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tests/odd.rst:
--------------------------------------------------------------------------------
1 | ``odd``
2 | =======
3 |
4 | ``odd`` returns ``true`` if the given number is odd:
5 |
6 | .. code-block:: jinja
7 |
8 | {{ var is odd }}
9 |
10 | .. seealso:: :doc:`even<../tests/even>`
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/verbatim/basic.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "verbatim" tag
3 | --TEMPLATE--
4 | {% verbatim %}
5 | {{ foo }}
6 | {% endverbatim %}
7 | --DATA--
8 | return array()
9 | --EXPECT--
10 | {{ foo }}
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tests/even.rst:
--------------------------------------------------------------------------------
1 | ``even``
2 | ========
3 |
4 | ``even`` returns ``true`` if the given number is even:
5 |
6 | .. code-block:: jinja
7 |
8 | {{ var is even }}
9 |
10 | .. seealso:: :doc:`odd<../tests/odd>`
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/block/special_chars.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "§" special chars in a block name
3 | --TEMPLATE--
4 | {% block § %}
5 | §
6 | {% endblock § %}
7 | --DATA--
8 | return array()
9 | --EXPECT--
10 | §
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/dynamic_filter.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | dynamic filter
3 | --TEMPLATE--
4 | {{ 'bar'|foo_path }}
5 | {{ 'bar'|a_foo_b_bar }}
6 | --DATA--
7 | return array()
8 | --EXPECT--
9 | foo/bar
10 | a/b/bar
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tests/index.rst:
--------------------------------------------------------------------------------
1 | Tests
2 | =====
3 |
4 | .. toctree::
5 | :maxdepth: 1
6 |
7 | constant
8 | defined
9 | divisibleby
10 | empty
11 | even
12 | iterable
13 | null
14 | odd
15 | sameas
16 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/capture-empty.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "set" tag block empty capture
3 | --TEMPLATE--
4 | {% set foo %}{% endset %}
5 |
6 | {% if foo %}FAIL{% endif %}
7 | --DATA--
8 | return array()
9 | --EXPECT--
10 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ternary_operator_noelse.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports the ternary operator
3 | --TEMPLATE--
4 | {{ 1 ? 'YES' }}
5 | {{ 0 ? 'YES' }}
6 | --DATA--
7 | return array()
8 | --EXPECT--
9 | YES
10 |
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/dynamic_function.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | dynamic function
3 | --TEMPLATE--
4 | {{ foo_path('bar') }}
5 | {{ a_foo_b_bar('bar') }}
6 | --DATA--
7 | return array()
8 | --EXPECT--
9 | foo/bar
10 | a/b/bar
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/json_encode.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "filter" tag applies a filter on its children
3 | --TEMPLATE--
4 | {% filter json_encode|raw %}test{% endfilter %}
5 | --DATA--
6 | return array()
7 | --EXPECT--
8 | "test"
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/capture.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "set" tag block capture
3 | --TEMPLATE--
4 | {% set foo %}f
o
o{% endset %}
5 |
6 | {{ foo }}
7 | --DATA--
8 | return array()
9 | --EXPECT--
10 | f
o
o
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tests/null.rst:
--------------------------------------------------------------------------------
1 | ``null``
2 | ========
3 |
4 | ``null`` returns ``true`` if the variable is ``null``:
5 |
6 | .. code-block:: jinja
7 |
8 | {{ var is null }}
9 |
10 | .. note::
11 |
12 | ``none`` is an alias for ``null``.
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ternary_operator_nothen.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports the ternary operator
3 | --TEMPLATE--
4 | {{ 'YES' ?: 'NO' }}
5 | {{ 0 ?: 'NO' }}
6 | --DATA--
7 | return array()
8 | --EXPECT--
9 | YES
10 | NO
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/replace.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "replace" filter
3 | --TEMPLATE--
4 | {{ "I like %this% and %that%."|replace({'%this%': "foo", '%that%': "bar"}) }}
5 | --DATA--
6 | return array()
7 | --EXPECT--
8 | I like foo and bar.
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/deep_empty.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "use" tag
3 | --TEMPLATE--
4 | {% use "foo.twig" %}
5 | --TEMPLATE(foo.twig)--
6 | {% use "bar.twig" %}
7 | --TEMPLATE(bar.twig)--
8 | --DATA--
9 | return array()
10 | --EXPECT--
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/missing.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" tag
3 | --TEMPLATE--
4 | {% include "foo.twig" %}
5 | --DATA--
6 | return array();
7 | --EXCEPTION--
8 | Twig_Error_Loader: Template "foo.twig" is not defined in "index.twig" at line 2.
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/empty.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "extends" tag
3 | --TEMPLATE--
4 | {% extends "foo.twig" %}
5 | --TEMPLATE(foo.twig)--
6 | {% block content %}FOO{% endblock %}
7 | --DATA--
8 | return array()
9 | --EXPECT--
10 | FOO
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/expression.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "set" tag
3 | --TEMPLATE--
4 | {% set foo, bar = 'foo' ~ 'bar', 'bar' ~ 'foo' %}
5 |
6 | {{ foo }}
7 | {{ bar }}
8 | --DATA--
9 | return array()
10 | --EXPECT--
11 | foobar
12 | barfoo
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/ext/twig/config.m4:
--------------------------------------------------------------------------------
1 | dnl config.m4 for extension twig
2 |
3 | PHP_ARG_ENABLE(twig, whether to enable twig support,
4 | [ --enable-twig Enable twig support])
5 |
6 | if test "$PHP_TWIG" != "no"; then
7 | PHP_NEW_EXTENSION(twig, twig.c, $ext_shared)
8 | fi
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/strings_like_numbers.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig does not confuse strings with integers in getAttribute()
3 | --TEMPLATE--
4 | {{ hash['2e2'] }}
5 | --DATA--
6 | return array('hash' => array('2e2' => 'works'))
7 | --EXPECT--
8 | works
9 |
--------------------------------------------------------------------------------
/vendor/composer/autoload_namespaces.php:
--------------------------------------------------------------------------------
1 | array($vendorDir . '/twig/twig/lib'),
10 | );
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/sort.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "sort" filter
3 | --TEMPLATE--
4 | {{ array1|sort|join }}
5 | {{ array2|sort|join }}
6 | --DATA--
7 | return array('array1' => array(4, 1), 'array2' => array('foo', 'bar'))
8 | --EXPECT--
9 | 14
10 | barfoo
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/missing.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" function
3 | --TEMPLATE--
4 | {{ include("foo.twig") }}
5 | --DATA--
6 | return array();
7 | --EXCEPTION--
8 | Twig_Error_Loader: Template "foo.twig" is not defined in "index.twig" at line 2.
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/basic.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "use" tag
3 | --TEMPLATE--
4 | {% use "blocks.twig" %}
5 |
6 | {{ block('content') }}
7 | --TEMPLATE(blocks.twig)--
8 | {% block content 'foo' %}
9 | --DATA--
10 | return array()
11 | --EXPECT--
12 | foo
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/multiple.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "filter" tags accept multiple chained filters
3 | --TEMPLATE--
4 | {% filter lower|title %}
5 | {{ var }}
6 | {% endfilter %}
7 | --DATA--
8 | return array('var' => 'VAR')
9 | --EXPECT--
10 | Var
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/keys.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "for" tag can iterate over keys
3 | --TEMPLATE--
4 | {% for key in items|keys %}
5 | * {{ key }}
6 | {% endfor %}
7 | --DATA--
8 | return array('items' => array('a', 'b'))
9 | --EXPECT--
10 | * 0
11 | * 1
12 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/basic.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" tag
3 | --TEMPLATE--
4 | FOO
5 | {% include "foo.twig" %}
6 |
7 | BAR
8 | --TEMPLATE(foo.twig)--
9 | FOOBAR
10 | --DATA--
11 | return array()
12 | --EXPECT--
13 | FOO
14 |
15 | FOOBAR
16 | BAR
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/autoescaping.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" function is safe for auto-escaping
3 | --TEMPLATE--
4 | {{ include("foo.twig") }}
5 | --TEMPLATE(foo.twig)--
6 |
Test
7 | --DATA--
8 | return array()
9 | --EXPECT--
10 | Test
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/values.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "for" tag iterates over item values
3 | --TEMPLATE--
4 | {% for item in items %}
5 | * {{ item }}
6 | {% endfor %}
7 | --DATA--
8 | return array('items' => array('a', 'b'))
9 | --EXPECT--
10 | * a
11 | * b
12 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_in_a_block.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "extends" tag
3 | --TEMPLATE--
4 | {% block content %}
5 | {% extends "foo.twig" %}
6 | {% endblock %}
7 | --EXCEPTION--
8 | Twig_Error_Syntax: Cannot extend from a block in "index.twig" at line 3
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/length.rst:
--------------------------------------------------------------------------------
1 | ``length``
2 | ==========
3 |
4 | The ``length`` filter returns the number of items of a sequence or mapping, or
5 | the length of a string:
6 |
7 | .. code-block:: jinja
8 |
9 | {% if users|length > 10 %}
10 | ...
11 | {% endif %}
12 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/undefined_parent.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Exception for an undefined parent
3 | --TEMPLATE--
4 | {% extends 'foo.html' %}
5 |
6 | {% set foo = "foo" %}
7 | --EXCEPTION--
8 | Twig_Error_Loader: Template "foo.html" is not defined in "index.twig" at line 2.
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/unary_precedence.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig unary operators precedence
3 | --TEMPLATE--
4 | {{ -1 - 1 }}
5 | {{ -1 - -1 }}
6 | {{ -1 * -1 }}
7 | {{ 4 / -1 * 5 }}
8 | --DATA--
9 | return array()
10 | --EXPECT--
11 | -2
12 | 0
13 | 1
14 | -20
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/escape_html_attr.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "escape" filter does not escape with the html strategy when using the html_attr strategy
3 | --TEMPLATE--
4 | {{ '
'|escape('html_attr') }}
5 | --DATA--
6 | return array()
7 | --EXPECT--
8 | <br />
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/keys.rst:
--------------------------------------------------------------------------------
1 | ``keys``
2 | ========
3 |
4 | The ``keys`` filter returns the keys of an array. It is useful when you want to
5 | iterate over the keys of an array:
6 |
7 | .. code-block:: jinja
8 |
9 | {% for key in array|keys %}
10 | ...
11 | {% endfor %}
12 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/unary.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports unary operators (not, -, +)
3 | --TEMPLATE--
4 | {{ not 1 }}/{{ not 0 }}
5 | {{ +1 + 1 }}/{{ -1 - 1 }}
6 | {{ not (false or true) }}
7 | --DATA--
8 | return array()
9 | --EXPECT--
10 | /1
11 | 2/-2
12 |
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/max.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "max" function
3 | --TEMPLATE--
4 | {{ max([2, 1, 3, 5, 4]) }}
5 | {{ max(2, 1, 3, 5, 4) }}
6 | {{ max({2:"two", 1:"one", 3:"three", 5:"five", 4:"for"}) }}
7 | --DATA--
8 | return array()
9 | --EXPECT--
10 | 5
11 | 5
12 | two
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/aliases.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "use" tag
3 | --TEMPLATE--
4 | {% use "blocks.twig" with content as foo %}
5 |
6 | {{ block('foo') }}
7 | --TEMPLATE(blocks.twig)--
8 | {% block content 'foo' %}
9 | --DATA--
10 | return array()
11 | --EXPECT--
12 | foo
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/assignment.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" function
3 | --TEMPLATE--
4 | {% set tmp = include("foo.twig") %}
5 |
6 | FOO{{ tmp }}BAR
7 | --TEMPLATE(foo.twig)--
8 | FOOBAR
9 | --DATA--
10 | return array()
11 | --EXPECT--
12 | FOO
13 | FOOBARBAR
14 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/basic.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" function
3 | --TEMPLATE--
4 | FOO
5 | {{ include("foo.twig") }}
6 |
7 | BAR
8 | --TEMPLATE(foo.twig)--
9 | FOOBAR
10 | --DATA--
11 | return array()
12 | --EXPECT--
13 | FOO
14 |
15 | FOOBAR
16 |
17 | BAR
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/min.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "min" function
3 | --TEMPLATE--
4 | {{ min(2, 1, 3, 5, 4) }}
5 | {{ min([2, 1, 3, 5, 4]) }}
6 | {{ min({2:"two", 1:"one", 3:"three", 5:"five", 4:"for"}) }}
7 | --DATA--
8 | return array()
9 | --EXPECT--
10 | 1
11 | 1
12 | five
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/double_escaping.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "autoescape" tag does not double-escape
3 | --TEMPLATE--
4 | {% autoescape 'html' %}
5 | {{ var|escape }}
6 | {% endautoescape %}
7 | --DATA--
8 | return array('var' => '
')
9 | --EXPECT--
10 | <br />
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/raw.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "autoescape" tag does not escape when raw is used as a filter
3 | --TEMPLATE--
4 | {% autoescape 'html' %}
5 | {{ var|raw }}
6 | {% endautoescape %}
7 | --DATA--
8 | return array('var' => '
')
9 | --EXPECT--
10 |
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/basic.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "filter" tag applies a filter on its children
3 | --TEMPLATE--
4 | {% filter upper %}
5 | Some text with a {{ var }}
6 | {% endfilter %}
7 | --DATA--
8 | return array('var' => 'var')
9 | --EXPECT--
10 | SOME TEXT WITH A VAR
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/extends_as_array.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "extends" tag
3 | --TEMPLATE--
4 | {% extends ["foo.twig", "bar.twig"] %}
5 | --TEMPLATE(bar.twig)--
6 | {% block content %}
7 | foo
8 | {% endblock %}
9 | --DATA--
10 | return array()
11 | --EXPECT--
12 | foo
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/source.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "source" function
3 | --TEMPLATE--
4 | FOO
5 | {{ source("foo.twig") }}
6 |
7 | BAR
8 | --TEMPLATE(foo.twig)--
9 | {{ foo }}
10 | --DATA--
11 | return array()
12 | --EXPECT--
13 | FOO
14 |
15 | {{ foo }}
16 |
17 | BAR
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/templates_as_array.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" tag
3 | --TEMPLATE--
4 | {% include ["foo.twig", "bar.twig"] %}
5 | {% include ["bar.twig", "foo.twig"] %}
6 | --TEMPLATE(foo.twig)--
7 | foo
8 | --DATA--
9 | return array()
10 | --EXPECT--
11 | foo
12 | foo
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/strings.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports string interpolation
3 | --TEMPLATE--
4 | {{ "foo #{"foo #{bar} baz"} baz" }}
5 | {{ "foo #{bar}#{bar} baz" }}
6 | --DATA--
7 | return array('bar' => 'BAR');
8 | --EXPECT--
9 | foo foo BAR baz baz
10 | foo BARBAR baz
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/template_instance.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" tag accepts Twig_Template instance
3 | --TEMPLATE--
4 | {% include foo %} FOO
5 | --TEMPLATE(foo.twig)--
6 | BAR
7 | --DATA--
8 | return array('foo' => $twig->loadTemplate('foo.twig'))
9 | --EXPECT--
10 | BAR FOO
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/extends_as_array_with_empty_name.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "extends" tag
3 | --TEMPLATE--
4 | {% extends ["", "bar.twig"] %}
5 | --TEMPLATE(bar.twig)--
6 | {% block content %}
7 | foo
8 | {% endblock %}
9 | --DATA--
10 | return array()
11 | --EXPECT--
12 | foo
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/extends_as_array_with_null_name.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "extends" tag
3 | --TEMPLATE--
4 | {% extends [null, "bar.twig"] %}
5 | --TEMPLATE(bar.twig)--
6 | {% block content %}
7 | foo
8 | {% endblock %}
9 | --DATA--
10 | return array()
11 | --EXPECT--
12 | foo
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/special_chars.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "§" as a macro name
3 | --TEMPLATE--
4 | {% import _self as macros %}
5 |
6 | {{ macros.§('foo') }}
7 |
8 | {% macro §(foo) %}
9 | §{{ foo }}§
10 | {% endmacro %}
11 | --DATA--
12 | return array()
13 | --EXPECT--
14 | §foo§
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/raw/mixed_usage_with_raw.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "raw" tag
3 | --TEMPLATE--
4 | {% raw %}
5 | {{ foo }}
6 | {% endverbatim %}
7 | --DATA--
8 | return array()
9 | --EXCEPTION--
10 | Twig_Error_Syntax: Unexpected end of file: Unclosed "raw" block in "index.twig" at line 2
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/capitalize.rst:
--------------------------------------------------------------------------------
1 | ``capitalize``
2 | ==============
3 |
4 | The ``capitalize`` filter capitalizes a value. The first character will be
5 | uppercase, all others lowercase:
6 |
7 | .. code-block:: jinja
8 |
9 | {{ 'my first car'|capitalize }}
10 |
11 | {# outputs 'My first car' #}
12 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tests/empty.rst:
--------------------------------------------------------------------------------
1 | ``empty``
2 | =========
3 |
4 | ``empty`` checks if a variable is empty:
5 |
6 | .. code-block:: jinja
7 |
8 | {# evaluates to true if the foo variable is null, false, an empty array, or the empty string #}
9 | {% if foo is empty %}
10 | ...
11 | {% endif %}
12 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/reserved_variables.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | macro
3 | --TEMPLATE--
4 | {% from _self import test %}
5 |
6 | {% macro test(this) -%}
7 | {{ this }}
8 | {%- endmacro %}
9 |
10 | {{ test(this) }}
11 | --DATA--
12 | return array('this' => 'foo');
13 | --EXPECT--
14 | foo
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/multi_word_tests.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig allows multi-word tests without a custom node class
3 | --TEMPLATE--
4 | {{ 'foo' is multi word ? 'yes' : 'no' }}
5 | {{ 'foo bar' is multi word ? 'yes' : 'no' }}
6 | --DATA--
7 | return array()
8 | --EXPECT--
9 | no
10 | yes
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/block/basic.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "block" tag
3 | --TEMPLATE--
4 | {% block title1 %}FOO{% endblock %}
5 | {% block title2 foo|lower %}
6 | --TEMPLATE(foo.twig)--
7 | {% block content %}{% endblock %}
8 | --DATA--
9 | return array('foo' => 'bar')
10 | --EXPECT--
11 | FOObar
12 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tags/do.rst:
--------------------------------------------------------------------------------
1 | ``do``
2 | ======
3 |
4 | .. versionadded:: 1.5
5 | The ``do`` tag was added in Twig 1.5.
6 |
7 | The ``do`` tag works exactly like the regular variable expression (``{{ ...
8 | }}``) just that it doesn't print anything:
9 |
10 | .. code-block:: jinja
11 |
12 | {% do 1 + 2 %}
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/template_instance.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" function accepts Twig_Template instance
3 | --TEMPLATE--
4 | {{ include(foo) }} FOO
5 | --TEMPLATE(foo.twig)--
6 | BAR
7 | --DATA--
8 | return array('foo' => $twig->loadTemplate('foo.twig'))
9 | --EXPECT--
10 | BAR FOO
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/templates_as_array.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" function
3 | --TEMPLATE--
4 | {{ include(["foo.twig", "bar.twig"]) }}
5 | {{- include(["bar.twig", "foo.twig"]) }}
6 | --TEMPLATE(foo.twig)--
7 | foo
8 | --DATA--
9 | return array()
10 | --EXPECT--
11 | foo
12 | foo
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/keys_and_values.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "for" tag can iterate over keys and values
3 | --TEMPLATE--
4 | {% for key, item in items %}
5 | * {{ key }}/{{ item }}
6 | {% endfor %}
7 | --DATA--
8 | return array('items' => array('a', 'b'))
9 | --EXPECT--
10 | * 0/a
11 | * 1/b
12 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/basic.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "extends" tag
3 | --TEMPLATE--
4 | {% extends "foo.twig" %}
5 |
6 | {% block content %}
7 | FOO
8 | {% endblock %}
9 | --TEMPLATE(foo.twig)--
10 | {% block content %}{% endblock %}
11 | --DATA--
12 | return array()
13 | --EXPECT--
14 | FOO
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/even.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "even" test
3 | --TEMPLATE--
4 | {{ 1 is even ? 'ko' : 'ok' }}
5 | {{ 2 is even ? 'ok' : 'ko' }}
6 | {{ 1 is not even ? 'ok' : 'ko' }}
7 | {{ 2 is not even ? 'ko' : 'ok' }}
8 | --DATA--
9 | return array()
10 | --EXPECT--
11 | ok
12 | ok
13 | ok
14 | ok
15 |
--------------------------------------------------------------------------------
/app/home/home.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | My Webpage
5 |
6 |
7 | {% set foo = 'bar' %}
8 |
9 | My Webpage
10 |
11 | {{ test | not_a_filter }}
12 |
13 | {{ go | lower_case }}
14 |
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tags/from.rst:
--------------------------------------------------------------------------------
1 | ``from``
2 | ========
3 |
4 | The ``from`` tag imports :doc:`macro<../tags/macro>` names into the current
5 | namespace. The tag is documented in detail in the documentation for the
6 | :doc:`import<../tags/import>` tag.
7 |
8 | .. seealso:: :doc:`macro<../tags/macro>`, :doc:`import<../tags/import>`
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_context_local.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "for" tag adds a loop variable to the context locally
3 | --TEMPLATE--
4 | {% for item in items %}
5 | {% endfor %}
6 | {% if loop is not defined %}WORKS{% endif %}
7 | --DATA--
8 | return array('items' => array())
9 | --EXPECT--
10 | WORKS
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/super_globals.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Super globals as macro arguments
3 | --TEMPLATE--
4 | {% import _self as macros %}
5 |
6 | {{ macros.foo('foo') }}
7 |
8 | {% macro foo(GET) %}
9 | {{ GET }}
10 | {% endmacro %}
11 | --DATA--
12 | return array()
13 | --EXPECT--
14 | foo
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/verbatim/mixed_usage_with_raw.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "verbatim" tag
3 | --TEMPLATE--
4 | {% verbatim %}
5 | {{ foo }}
6 | {% endraw %}
7 | --DATA--
8 | return array()
9 | --EXCEPTION--
10 | Twig_Error_Syntax: Unexpected end of file: Unclosed "verbatim" block in "index.twig" at line 2
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/.editorconfig:
--------------------------------------------------------------------------------
1 | ; top-most EditorConfig file
2 | root = true
3 |
4 | ; Unix-style newlines
5 | [*]
6 | end_of_line = LF
7 |
8 | [*.php]
9 | indent_style = space
10 | indent_size = 4
11 |
12 | [*.test]
13 | indent_style = space
14 | indent_size = 4
15 |
16 | [*.rst]
17 | indent_style = space
18 | indent_size = 4
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/negative_numbers.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig manages negative numbers correctly
3 | --TEMPLATE--
4 | {{ -1 }}
5 | {{ - 1 }}
6 | {{ 5 - 1 }}
7 | {{ 5-1 }}
8 | {{ 5 + -1 }}
9 | {{ 5 + - 1 }}
10 | --DATA--
11 | return array()
12 | --EXPECT--
13 | -1
14 | -1
15 | 4
16 | 4
17 | 4
18 | 4
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/spaceless/simple.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "spaceless" tag removes whites between HTML tags
3 | --TEMPLATE--
4 | {% spaceless %}
5 |
6 |
7 |
8 | {% endspaceless %}
9 | --DATA--
10 | return array()
11 | --EXPECT--
12 |
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/title.rst:
--------------------------------------------------------------------------------
1 | ``title``
2 | =========
3 |
4 | The ``title`` filter returns a titlecased version of the value. Words will
5 | start with uppercase letters, all remaining characters are lowercase:
6 |
7 | .. code-block:: jinja
8 |
9 | {{ 'my first car'|title }}
10 |
11 | {# outputs 'My First Car' #}
12 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/bitwise.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports bitwise operations
3 | --TEMPLATE--
4 | {{ 1 b-and 5 }}
5 | {{ 1 b-or 5 }}
6 | {{ 1 b-xor 5 }}
7 | {{ (1 and 0 b-or 0) is same as(1 and (0 b-or 0)) ? 'ok' : 'ko' }}
8 | --DATA--
9 | return array()
10 | --EXPECT--
11 | 1
12 | 5
13 | 4
14 | ok
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/matches.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports the "matches" operator
3 | --TEMPLATE--
4 | {{ 'foo' matches '/o/' ? 'OK' : 'KO' }}
5 | {{ 'foo' matches '/^fo/' ? 'OK' : 'KO' }}
6 | {{ 'foo' matches '/O/i' ? 'OK' : 'KO' }}
7 | --DATA--
8 | return array()
9 | --EXPECT--
10 | OK
11 | OK
12 | OK
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/join.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "join" filter
3 | --TEMPLATE--
4 | {{ ["foo", "bar"]|join(', ') }}
5 | {{ foo|join(', ') }}
6 | {{ bar|join(', ') }}
7 | --DATA--
8 | return array('foo' => new TwigTestFoo(), 'bar' => new ArrayObject(array(3, 4)))
9 | --EXPECT--
10 | foo, bar
11 | 1, 2
12 | 3, 4
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/length_utf8.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "length" filter
3 | --CONDITION--
4 | function_exists('mb_get_info')
5 | --TEMPLATE--
6 | {{ string|length }}
7 | {{ markup|length }}
8 | --DATA--
9 | return array('string' => 'été', 'markup' => new Twig_Markup('foo', 'UTF-8'))
10 | --EXPECT--
11 | 3
12 | 3
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/with_for_tag.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "filter" tag applies the filter on "for" tags
3 | --TEMPLATE--
4 | {% filter upper %}
5 | {% for item in items %}
6 | {{ item }}
7 | {% endfor %}
8 | {% endfilter %}
9 | --DATA--
10 | return array('items' => array('a', 'b'))
11 | --EXPECT--
12 | A
13 | B
14 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/dynamic.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "extends" tag
3 | --TEMPLATE--
4 | {% extends foo %}
5 |
6 | {% block content %}
7 | FOO
8 | {% endblock %}
9 | --TEMPLATE(foo.twig)--
10 | {% block content %}{% endblock %}
11 | --DATA--
12 | return array('foo' => 'foo.twig')
13 | --EXPECT--
14 | FOO
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/functions/index.rst:
--------------------------------------------------------------------------------
1 | Functions
2 | =========
3 |
4 | .. toctree::
5 | :maxdepth: 1
6 |
7 | attribute
8 | block
9 | constant
10 | cycle
11 | date
12 | dump
13 | include
14 | max
15 | min
16 | parent
17 | random
18 | range
19 | source
20 | template_from_string
21 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_without_extends.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "parent" tag
3 | --TEMPLATE--
4 | {% block content %}
5 | {{ parent() }}
6 | {% endblock %}
7 | --EXCEPTION--
8 | Twig_Error_Syntax: Calling "parent" on a template that does not extend nor "use" another template is forbidden in "index.twig" at line 3
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/index.rst:
--------------------------------------------------------------------------------
1 | Twig
2 | ====
3 |
4 | .. toctree::
5 | :maxdepth: 2
6 |
7 | intro
8 | installation
9 | templates
10 | api
11 | advanced
12 | internals
13 | deprecated
14 | recipes
15 | coding_standards
16 | tags/index
17 | filters/index
18 | functions/index
19 | tests/index
20 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/json_encode.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "json_encode" filter
3 | --TEMPLATE--
4 | {{ "foo"|json_encode|raw }}
5 | {{ foo|json_encode|raw }}
6 | {{ [foo, "foo"]|json_encode|raw }}
7 | --DATA--
8 | return array('foo' => new Twig_Markup('foo', 'UTF-8'))
9 | --EXPECT--
10 | "foo"
11 | "foo"
12 | ["foo","foo"]
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/constant.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "constant" function
3 | --TEMPLATE--
4 | {{ constant('DATE_W3C') == expect ? 'true' : 'false' }}
5 | {{ constant('ARRAY_AS_PROPS', object) }}
6 | --DATA--
7 | return array('expect' => DATE_W3C, 'object' => new ArrayObject(array('hi')));
8 | --EXPECT--
9 | true
10 | 2
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/with_filters.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | macro with a filter
3 | --TEMPLATE--
4 | {% import _self as test %}
5 |
6 | {% macro test() %}
7 | {% filter escape %}foo
{% endfilter %}
8 | {% endmacro %}
9 |
10 | {{ test.test() }}
11 | --DATA--
12 | return array();
13 | --EXPECT--
14 | foo<br />
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/blocks.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "autoescape" tag applies escaping on embedded blocks
3 | --TEMPLATE--
4 | {% autoescape 'html' %}
5 | {% block foo %}
6 | {{ var }}
7 | {% endblock %}
8 | {% endautoescape %}
9 | --DATA--
10 | return array('var' => '
')
11 | --EXPECT--
12 | <br />
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/expression.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" tag allows expressions for the template to include
3 | --TEMPLATE--
4 | FOO
5 | {% include foo %}
6 |
7 | BAR
8 | --TEMPLATE(foo.twig)--
9 | FOOBAR
10 | --DATA--
11 | return array('foo' => 'foo.twig')
12 | --EXPECT--
13 | FOO
14 |
15 | FOOBAR
16 | BAR
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "extends" tag
3 | --TEMPLATE--
4 | {% extends "foo.twig" %}
5 |
6 | {% block content %}{{ parent() }}FOO{{ parent() }}{% endblock %}
7 | --TEMPLATE(foo.twig)--
8 | {% block content %}BAR{% endblock %}
9 | --DATA--
10 | return array()
11 | --EXPECT--
12 | BARFOOBAR
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/undefined_trait.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Exception for an undefined trait
3 | --TEMPLATE--
4 | {% use 'foo' with foobar as bar %}
5 | --TEMPLATE(foo)--
6 | {% block bar %}
7 | {% endblock %}
8 | --EXCEPTION--
9 | Twig_Error_Runtime: Block "foobar" is not defined in trait "foo" in "index.twig" at line 2.
10 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/two_word_operators_as_variables.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig does not allow to use two-word named operators as variable names
3 | --TEMPLATE--
4 | {{ starts with }}
5 | --DATA--
6 | return array()
7 | --EXCEPTION--
8 | Twig_Error_Syntax: Unexpected token "operator" of value "starts with" in "index.twig" at line 2
9 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/default_values.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | macro
3 | --TEMPLATE--
4 | {% from _self import test %}
5 |
6 | {% macro test(a, b = 'bar') -%}
7 | {{ a }}{{ b }}
8 | {%- endmacro %}
9 |
10 | {{ test('foo') }}
11 | {{ test('bar', 'foo') }}
12 | --DATA--
13 | return array();
14 | --EXPECT--
15 | foobar
16 | barfoo
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/block.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "block" function
3 | --TEMPLATE--
4 | {% extends 'base.twig' %}
5 | {% block bar %}BAR{% endblock %}
6 | --TEMPLATE(base.twig)--
7 | {% block foo %}{{ block('bar') }}{% endblock %}
8 | {% block bar %}BAR_BASE{% endblock %}
9 | --DATA--
10 | return array()
11 | --EXPECT--
12 | BARBAR
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/abs.rst:
--------------------------------------------------------------------------------
1 | ``abs``
2 | =======
3 |
4 | The ``abs`` filter returns the absolute value.
5 |
6 | .. code-block:: jinja
7 |
8 | {# number = -5 #}
9 |
10 | {{ number|abs }}
11 |
12 | {# outputs 5 #}
13 |
14 | .. note::
15 |
16 | Internally, Twig uses the PHP `abs`_ function.
17 |
18 | .. _`abs`: http://php.net/abs
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/expression.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" function allows expressions for the template to include
3 | --TEMPLATE--
4 | FOO
5 | {{ include(foo) }}
6 |
7 | BAR
8 | --TEMPLATE(foo.twig)--
9 | FOOBAR
10 | --DATA--
11 | return array('foo' => 'foo.twig')
12 | --EXPECT--
13 | FOO
14 |
15 | FOOBAR
16 |
17 | BAR
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/block/block_unique_name.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "block" tag
3 | --TEMPLATE--
4 | {% block content %}
5 | {% block content %}
6 | {% endblock %}
7 | {% endblock %}
8 | --DATA--
9 | return array()
10 | --EXCEPTION--
11 | Twig_Error_Syntax: The block 'content' has already been defined line 2 in "index.twig" at line 3
12 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/with_variables.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" tag accept variables
3 | --TEMPLATE--
4 | {% include "foo.twig" with {'foo': 'bar'} %}
5 | {% include "foo.twig" with vars %}
6 | --TEMPLATE(foo.twig)--
7 | {{ foo }}
8 | --DATA--
9 | return array('vars' => array('foo' => 'bar'))
10 | --EXPECT--
11 | bar
12 | bar
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_without_extends_but_traits.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "parent" tag
3 | --TEMPLATE--
4 | {% use 'foo.twig' %}
5 |
6 | {% block content %}
7 | {{ parent() }}
8 | {% endblock %}
9 | --TEMPLATE(foo.twig)--
10 | {% block content %}BAR{% endblock %}
11 | --DATA--
12 | return array()
13 | --EXPECT--
14 | BAR
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/sandbox/not_valid1.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | sandbox tag
3 | --TEMPLATE--
4 | {%- sandbox %}
5 | {%- include "foo.twig" %}
6 | a
7 | {%- endsandbox %}
8 | --TEMPLATE(foo.twig)--
9 | foo
10 | --EXCEPTION--
11 | Twig_Error_Syntax: Only "include" tags are allowed within a "sandbox" section in "index.twig" at line 4
12 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/array_call.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports method calls
3 | --TEMPLATE--
4 | {{ items.foo }}
5 | {{ items['foo'] }}
6 | {{ items[foo] }}
7 | {{ items[items[foo]] }}
8 | --DATA--
9 | return array('foo' => 'bar', 'items' => array('foo' => 'bar', 'bar' => 'foo'))
10 | --EXPECT--
11 | bar
12 | bar
13 | foo
14 | bar
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/with_variables.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" function accept variables
3 | --TEMPLATE--
4 | {{ include("foo.twig", {'foo': 'bar'}) }}
5 | {{- include("foo.twig", vars) }}
6 | --TEMPLATE(foo.twig)--
7 | {{ foo }}
8 | --DATA--
9 | return array('vars' => array('foo' => 'bar'))
10 | --EXPECT--
11 | bar
12 | bar
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_not_defined_cond.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "for" tag
3 | --TEMPLATE--
4 | {% for i, item in items if loop.last > 0 %}
5 | {% endfor %}
6 | --DATA--
7 | return array('items' => array('a', 'b'))
8 | --EXCEPTION--
9 | Twig_Error_Syntax: The "loop" variable cannot be used in a looping condition in "index.twig" at line 2
10 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/from.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | global variables
3 | --TEMPLATE--
4 | {% include "included.twig" %}
5 | {% from "included.twig" import foobar %}
6 | {{ foobar() }}
7 | --TEMPLATE(included.twig)--
8 | {% macro foobar() %}
9 | called foobar
10 | {% endmacro %}
11 | --DATA--
12 | return array();
13 | --EXPECT--
14 | called foobar
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tags/index.rst:
--------------------------------------------------------------------------------
1 | Tags
2 | ====
3 |
4 | .. toctree::
5 | :maxdepth: 1
6 |
7 | autoescape
8 | block
9 | do
10 | embed
11 | extends
12 | filter
13 | flush
14 | for
15 | from
16 | if
17 | import
18 | include
19 | macro
20 | sandbox
21 | set
22 | spaceless
23 | use
24 | verbatim
25 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/nested_calls.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | macro
3 | --TEMPLATE--
4 | {% import _self as macros %}
5 |
6 | {% macro foo(data) %}
7 | {{ data }}
8 | {% endmacro %}
9 |
10 | {% macro bar() %}
11 |
12 | {% endmacro %}
13 |
14 | {{ macros.foo(macros.bar()) }}
15 | --DATA--
16 | return array();
17 | --EXPECT--
18 |
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/global.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "macro" tag
3 | --TEMPLATE--
4 | {% from 'forms.twig' import foo %}
5 |
6 | {{ foo('foo') }}
7 | {{ foo() }}
8 | --TEMPLATE(forms.twig)--
9 | {% macro foo(name) %}{{ name|default('foo') }}{{ global }}{% endmacro %}
10 | --DATA--
11 | return array()
12 | --EXPECT--
13 | fooglobal
14 | fooglobal
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/set/basic.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "set" tag
3 | --TEMPLATE--
4 | {% set foo = 'foo' %}
5 | {% set bar = 'foo
' %}
6 |
7 | {{ foo }}
8 | {{ bar }}
9 |
10 | {% set foo, bar = 'foo', 'bar' %}
11 |
12 | {{ foo }}{{ bar }}
13 | --DATA--
14 | return array()
15 | --EXPECT--
16 | foo
17 | foo<br />
18 |
19 |
20 | foobar
21 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/literals.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports literals
3 | --TEMPLATE--
4 | 1 {{ true }}
5 | 2 {{ TRUE }}
6 | 3 {{ false }}
7 | 4 {{ FALSE }}
8 | 5 {{ none }}
9 | 6 {{ NONE }}
10 | 7 {{ null }}
11 | 8 {{ NULL }}
12 | --DATA--
13 | return array()
14 | --EXPECT--
15 | 1 1
16 | 2 1
17 | 3
18 | 4
19 | 5
20 | 6
21 | 7
22 | 8
23 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/last.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "last" filter
3 | --TEMPLATE--
4 | {{ [1, 2, 3, 4]|last }}
5 | {{ {a: 1, b: 2, c: 3, d: 4}|last }}
6 | {{ '1234'|last }}
7 | {{ arr|last }}
8 | {{ 'Ä€é'|last }}
9 | {{ ''|last }}
10 | --DATA--
11 | return array('arr' => new ArrayObject(array(1, 2, 3, 4)))
12 | --EXPECT--
13 | 4
14 | 4
15 | 4
16 | 4
17 | é
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/ignore_missing.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" tag
3 | --TEMPLATE--
4 | {% include ["foo.twig", "bar.twig"] ignore missing %}
5 | {% include "foo.twig" ignore missing %}
6 | {% include "foo.twig" ignore missing with {} %}
7 | {% include "foo.twig" ignore missing with {} only %}
8 | --DATA--
9 | return array()
10 | --EXPECT--
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/sort.rst:
--------------------------------------------------------------------------------
1 | ``sort``
2 | ========
3 |
4 | The ``sort`` filter sorts an array:
5 |
6 | .. code-block:: jinja
7 |
8 | {% for user in users|sort %}
9 | ...
10 | {% endfor %}
11 |
12 | .. note::
13 |
14 | Internally, Twig uses the PHP `asort`_ function to maintain index
15 | association.
16 |
17 | .. _`asort`: http://php.net/asort
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/convert_encoding.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "convert_encoding" filter
3 | --CONDITION--
4 | function_exists('iconv') || function_exists('mb_convert_encoding')
5 | --TEMPLATE--
6 | {{ "愛していますか?"|convert_encoding('ISO-2022-JP', 'UTF-8')|convert_encoding('UTF-8', 'ISO-2022-JP') }}
7 | --DATA--
8 | return array()
9 | --EXPECT--
10 | 愛していますか?
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/length.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "length" filter
3 | --TEMPLATE--
4 | {{ array|length }}
5 | {{ string|length }}
6 | {{ number|length }}
7 | {{ markup|length }}
8 | --DATA--
9 | return array('array' => array(1, 4), 'string' => 'foo', 'number' => 1000, 'markup' => new Twig_Markup('foo', 'UTF-8'))
10 | --EXPECT--
11 | 2
12 | 3
13 | 4
14 | 3
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/nested.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "filter" tags can be nested at will
3 | --TEMPLATE--
4 | {% filter lower|title %}
5 | {{ var }}
6 | {% filter upper %}
7 | {{ var }}
8 | {% endfilter %}
9 | {{ var }}
10 | {% endfilter %}
11 | --DATA--
12 | return array('var' => 'var')
13 | --EXPECT--
14 | Var
15 | Var
16 | Var
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_change.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "extends" tag
3 | --TEMPLATE--
4 | {% extends foo ? 'foo.twig' : 'bar.twig' %}
5 | --TEMPLATE(foo.twig)--
6 | FOO
7 | --TEMPLATE(bar.twig)--
8 | BAR
9 | --DATA--
10 | return array('foo' => true)
11 | --EXPECT--
12 | FOO
13 | --DATA--
14 | return array('foo' => false)
15 | --EXPECT--
16 | BAR
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/bootstrap.php:
--------------------------------------------------------------------------------
1 | new ArrayObject(array(1, 2, 3, 4)))
12 | --EXPECT--
13 | 1
14 | 1
15 | 1
16 | 1
17 | Ä
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_not_defined.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "for" tag
3 | --TEMPLATE--
4 | {% for i, item in items if i > 0 %}
5 | {{ loop.last }}
6 | {% endfor %}
7 | --DATA--
8 | return array('items' => array('a', 'b'))
9 | --EXCEPTION--
10 | Twig_Error_Syntax: The "loop.last" variable is not defined when looping with a condition in "index.twig" at line 3
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/endmacro_name.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "macro" tag supports name for endmacro
3 | --TEMPLATE--
4 | {% import _self as macros %}
5 |
6 | {{ macros.foo() }}
7 | {{ macros.bar() }}
8 |
9 | {% macro foo() %}foo{% endmacro %}
10 | {% macro bar() %}bar{% endmacro bar %}
11 | --DATA--
12 | return array()
13 | --EXPECT--
14 | foo
15 | bar
16 |
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/striptags.rst:
--------------------------------------------------------------------------------
1 | ``striptags``
2 | =============
3 |
4 | The ``striptags`` filter strips SGML/XML tags and replace adjacent whitespace
5 | by one space:
6 |
7 | .. code-block:: jinja
8 |
9 | {{ some_html|striptags }}
10 |
11 | .. note::
12 |
13 | Internally, Twig uses the PHP `strip_tags`_ function.
14 |
15 | .. _`strip_tags`: http://php.net/strip_tags
16 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/condition.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "for" tag takes a condition
3 | --TEMPLATE--
4 | {% for i in 1..5 if i is odd -%}
5 | {{ loop.index }}.{{ i }}{{ foo.bar }}
6 | {% endfor %}
7 | --DATA--
8 | return array('foo' => array('bar' => 'X'))
9 | --CONFIG--
10 | return array('strict_variables' => false)
11 | --EXPECT--
12 | 1.1X
13 | 2.3X
14 | 3.5X
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/sandbox.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" tag sandboxed
3 | --TEMPLATE--
4 | {{ include("foo.twig", sandboxed = true) }}
5 | --TEMPLATE(foo.twig)--
6 |
7 |
8 | {{ foo|e }}
9 | {{ foo|e }}
10 | --DATA--
11 | return array()
12 | --EXCEPTION--
13 | Twig_Sandbox_SecurityNotAllowedFilterError: Filter "e" is not allowed in "foo.twig" at line 4.
14 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/operators_as_variables.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig allows to use named operators as variable names
3 | --TEMPLATE--
4 | {% for match in matches %}
5 | {{- match }}
6 | {% endfor %}
7 | {{ in }}
8 | {{ is }}
9 | --DATA--
10 | return array('matches' => array(1, 2, 3), 'in' => 'in', 'is' => 'is')
11 | --EXPECT--
12 | 1
13 | 2
14 | 3
15 | in
16 | is
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/nested_blocks_parent_only.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "block" tag
3 | --TEMPLATE--
4 | {% block content %}
5 | CONTENT
6 | {%- block subcontent -%}
7 | SUBCONTENT
8 | {%- endblock -%}
9 | ENDCONTENT
10 | {% endblock %}
11 | --TEMPLATE(foo.twig)--
12 | --DATA--
13 | return array()
14 | --EXPECT--
15 | CONTENTSUBCONTENTENDCONTENT
16 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tests/divisibleby.rst:
--------------------------------------------------------------------------------
1 | ``divisible by``
2 | ================
3 |
4 | .. versionadded:: 1.14.2
5 | The ``divisible by`` test was added in Twig 1.14.2 as an alias for
6 | ``divisibleby``.
7 |
8 | ``divisible by`` checks if a variable is divisible by a number:
9 |
10 | .. code-block:: jinja
11 |
12 | {% if loop.index is divisible by(3) %}
13 | ...
14 | {% endif %}
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/comparison.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports comparison operators (==, !=, <, >, >=, <=)
3 | --TEMPLATE--
4 | {{ 1 > 2 }}/{{ 1 > 1 }}/{{ 1 >= 2 }}/{{ 1 >= 1 }}
5 | {{ 1 < 2 }}/{{ 1 < 1 }}/{{ 1 <= 2 }}/{{ 1 <= 1 }}
6 | {{ 1 == 1 }}/{{ 1 == 2 }}
7 | {{ 1 != 1 }}/{{ 1 != 2 }}
8 | --DATA--
9 | return array()
10 | --EXPECT--
11 | ///1
12 | 1//1/1
13 | 1/
14 | /1
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/trim.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "trim" filter
3 | --TEMPLATE--
4 | {{ " I like Twig. "|trim }}
5 | {{ text|trim }}
6 | {{ " foo/"|trim("/") }}
7 | --DATA--
8 | return array('text' => " If you have some HTML it will be escaped. ")
9 | --EXPECT--
10 | I like Twig.
11 | If you have some <strong>HTML</strong> it will be escaped.
12 | foo
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/divisibleby.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports the "divisible by" operator
3 | --TEMPLATE--
4 | {{ 8 is divisible by(2) ? 'OK' }}
5 | {{ 8 is not divisible by(3) ? 'OK' }}
6 | {{ 8 is divisible by (2) ? 'OK' }}
7 | {{ 8 is not
8 | divisible
9 | by
10 | (3) ? 'OK' }}
11 | --DATA--
12 | return array()
13 | --EXPECT--
14 | OK
15 | OK
16 | OK
17 | OK
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/round.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "round" filter
3 | --TEMPLATE--
4 | {{ 2.7|round }}
5 | {{ 2.1|round }}
6 | {{ 2.1234|round(3, 'floor') }}
7 | {{ 2.1|round(0, 'ceil') }}
8 |
9 | {{ 21.3|round(-1)}}
10 | {{ 21.3|round(-1, 'ceil')}}
11 | {{ 21.3|round(-1, 'floor')}}
12 | --DATA--
13 | return array()
14 | --EXPECT--
15 | 3
16 | 2
17 | 2.123
18 | 3
19 |
20 | 20
21 | 30
22 | 20
23 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/template_instance.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "extends" tag accepts Twig_Template instance
3 | --TEMPLATE--
4 | {% extends foo %}
5 |
6 | {% block content %}
7 | {{ parent() }}FOO
8 | {% endblock %}
9 | --TEMPLATE(foo.twig)--
10 | {% block content %}BAR{% endblock %}
11 | --DATA--
12 | return array('foo' => $twig->loadTemplate('foo.twig'))
13 | --EXPECT--
14 | BARFOO
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_function_with_undefined_variable.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Exception for multile function with undefined variable
3 | --TEMPLATE--
4 | {{ include('foo',
5 | with_context=with_context
6 | ) }}
7 | --TEMPLATE(foo)--
8 | Foo
9 | --DATA--
10 | return array()
11 | --EXCEPTION--
12 | Twig_Error_Runtime: Variable "with_context" does not exist in "index.twig" at line 3
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_default_format.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "date" filter
3 | --TEMPLATE--
4 | {{ date1|date }}
5 | {{ date1|date('d/m/Y') }}
6 | --DATA--
7 | date_default_timezone_set('UTC');
8 | $twig->getExtension('core')->setDateFormat('Y-m-d', '%d days %h hours');
9 | return array(
10 | 'date1' => mktime(13, 45, 0, 10, 4, 2010),
11 | )
12 | --EXPECT--
13 | 2010-10-04
14 | 04/10/2010
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/context.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "for" tag keeps the context safe
3 | --TEMPLATE--
4 | {% for item in items %}
5 | {% for item in items %}
6 | * {{ item }}
7 | {% endfor %}
8 | * {{ item }}
9 | {% endfor %}
10 | --DATA--
11 | return array('items' => array('a', 'b'))
12 | --EXPECT--
13 | * a
14 | * b
15 | * a
16 | * a
17 | * b
18 | * b
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/force_escape.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "escape" filter
3 | --TEMPLATE--
4 | {% set foo %}
5 | foo
6 | {% endset %}
7 |
8 | {{ foo|e('html') -}}
9 | {{ foo|e('js') }}
10 | {% autoescape true %}
11 | {{ foo }}
12 | {% endautoescape %}
13 | --DATA--
14 | return array()
15 | --EXPECT--
16 | foo<br />
17 | \x20\x20\x20\x20foo\x3Cbr\x20\x2F\x3E\x0A
18 | foo
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/dump.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "dump" function
3 | --CONDITION--
4 | !extension_loaded('xdebug')
5 | --TEMPLATE--
6 | {{ dump('foo') }}
7 | {{ dump('foo', 'bar') }}
8 | --DATA--
9 | return array('foo' => 'foo', 'bar' => 'bar')
10 | --CONFIG--
11 | return array('debug' => true, 'autoescape' => false);
12 | --EXPECT--
13 | string(3) "foo"
14 |
15 | string(3) "foo"
16 | string(3) "bar"
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/postfix.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig parses postfix expressions
3 | --TEMPLATE--
4 | {% import _self as macros %}
5 |
6 | {% macro foo() %}foo{% endmacro %}
7 |
8 | {{ 'a' }}
9 | {{ 'a'|upper }}
10 | {{ ('a')|upper }}
11 | {{ -1|upper }}
12 | {{ macros.foo() }}
13 | {{ (macros).foo() }}
14 | --DATA--
15 | return array();
16 | --EXPECT--
17 | a
18 | A
19 | A
20 | -1
21 | foo
22 | foo
23 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/cycle.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "cycle" function
3 | --TEMPLATE--
4 | {% for i in 0..6 %}
5 | {{ cycle(array1, i) }}-{{ cycle(array2, i) }}
6 | {% endfor %}
7 | --DATA--
8 | return array('array1' => array('odd', 'even'), 'array2' => array('apple', 'orange', 'citrus'))
9 | --EXPECT--
10 | odd-apple
11 | even-orange
12 | odd-citrus
13 | even-apple
14 | odd-orange
15 | even-citrus
16 | odd-apple
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/inner_variables.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "for" tag does not reset inner variables
3 | --TEMPLATE--
4 | {% for i in 1..2 %}
5 | {% for j in 0..2 %}
6 | {{k}}{% set k = k+1 %} {{ loop.parent.loop.index }}
7 | {% endfor %}
8 | {% endfor %}
9 | --DATA--
10 | return array('k' => 0)
11 | --EXPECT--
12 | 0 1
13 | 1 1
14 | 2 1
15 | 3 2
16 | 4 2
17 | 5 2
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/if/expression.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "if" takes an expression as a test
3 | --TEMPLATE--
4 | {% if a < 2 %}
5 | A1
6 | {% elseif a > 10 %}
7 | A2
8 | {% else %}
9 | A3
10 | {% endif %}
11 | --DATA--
12 | return array('a' => 1)
13 | --EXPECT--
14 | A1
15 | --DATA--
16 | return array('a' => 12)
17 | --EXPECT--
18 | A2
19 | --DATA--
20 | return array('a' => 7)
21 | --EXPECT--
22 | A3
23 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/sandbox/not_valid2.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | sandbox tag
3 | --TEMPLATE--
4 | {%- sandbox %}
5 | {%- include "foo.twig" %}
6 |
7 | {% if 1 %}
8 | {%- include "foo.twig" %}
9 | {% endif %}
10 | {%- endsandbox %}
11 | --TEMPLATE(foo.twig)--
12 | foo
13 | --EXCEPTION--
14 | Twig_Error_Syntax: Only "include" tags are allowed within a "sandbox" section in "index.twig" at line 5
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_function_with_unknown_argument.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Exception for multiline function with unknown argument
3 | --TEMPLATE--
4 | {{ include('foo',
5 | with_context=True,
6 | invalid=False
7 | ) }}
8 | --EXCEPTION--
9 | Twig_Error_Syntax: Unknown argument "invalid" for function "include(template, variables, with_context, ignore_missing, sandboxed)" in "index.twig" at line 4.
10 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/nested_else.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "for" tag can use an "else" clause
3 | --TEMPLATE--
4 | {% for item in items %}
5 | {% for item in items1 %}
6 | * {{ item }}
7 | {% else %}
8 | no {{ item }}
9 | {% endfor %}
10 | {% else %}
11 | no item1
12 | {% endfor %}
13 | --DATA--
14 | return array('items' => array('a', 'b'), 'items1' => array())
15 | --EXPECT--
16 | no a
17 | no b
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/if/basic.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "if" creates a condition
3 | --TEMPLATE--
4 | {% if a is defined %}
5 | {{ a }}
6 | {% elseif b is defined %}
7 | {{ b }}
8 | {% else %}
9 | NOTHING
10 | {% endif %}
11 | --DATA--
12 | return array('a' => 'a')
13 | --EXPECT--
14 | a
15 | --DATA--
16 | return array('b' => 'b')
17 | --EXPECT--
18 | b
19 | --DATA--
20 | return array()
21 | --EXPECT--
22 | NOTHING
23 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/number_format.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "number_format" filter
3 | --TEMPLATE--
4 | {{ 20|number_format }}
5 | {{ 20.25|number_format }}
6 | {{ 20.25|number_format(2) }}
7 | {{ 20.25|number_format(2, ',') }}
8 | {{ 1020.25|number_format(2, ',') }}
9 | {{ 1020.25|number_format(2, ',', '.') }}
10 | --DATA--
11 | return array();
12 | --EXPECT--
13 | 20
14 | 20
15 | 20.25
16 | 20,25
17 | 1,020,25
18 | 1.020,25
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Body.php:
--------------------------------------------------------------------------------
1 |
16 | */
17 | class Twig_Node_Body extends Twig_Node
18 | {
19 | }
20 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/ignore_missing.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" function
3 | --TEMPLATE--
4 | {{ include(["foo.twig", "bar.twig"], ignore_missing = true) }}
5 | {{ include("foo.twig", ignore_missing = true) }}
6 | {{ include("foo.twig", ignore_missing = true, variables = {}) }}
7 | {{ include("foo.twig", ignore_missing = true, variables = {}, with_context = true) }}
8 | --DATA--
9 | return array()
10 | --EXPECT--
11 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/error_line.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "embed" tag
3 | --TEMPLATE(index.twig)--
4 | FOO
5 | {% embed "foo.twig" %}
6 | {% block c1 %}
7 | {{ nothing }}
8 | {% endblock %}
9 | {% endembed %}
10 | BAR
11 | --TEMPLATE(foo.twig)--
12 | {% block c1 %}{% endblock %}
13 | --DATA--
14 | return array()
15 | --EXCEPTION--
16 | Twig_Error_Runtime: Variable "nothing" does not exist in "index.twig" at line 5
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/multiple.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "extends" tag
3 | --TEMPLATE--
4 | {% extends "layout.twig" %}{% block content %}{{ parent() }}index {% endblock %}
5 | --TEMPLATE(layout.twig)--
6 | {% extends "base.twig" %}{% block content %}{{ parent() }}layout {% endblock %}
7 | --TEMPLATE(base.twig)--
8 | {% block content %}base {% endblock %}
9 | --DATA--
10 | return array()
11 | --EXPECT--
12 | base layout index
13 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/functions/block.rst:
--------------------------------------------------------------------------------
1 | ``block``
2 | =========
3 |
4 | When a template uses inheritance and if you want to print a block multiple
5 | times, use the ``block`` function:
6 |
7 | .. code-block:: jinja
8 |
9 | {% block title %}{% endblock %}
10 |
11 | {{ block('title') }}
12 |
13 | {% block body %}{% endblock %}
14 |
15 | .. seealso:: :doc:`extends<../tags/extends>`, :doc:`parent<../functions/parent>`
16 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_array_with_undefined_variable_again.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Exception for multiline array with undefined variable
3 | --TEMPLATE--
4 | {% set foo = {
5 | foo: 'foo',
6 | bar: 'bar',
7 |
8 |
9 | foobar: foobar,
10 |
11 |
12 |
13 | foo2: foo2,
14 | } %}
15 | --DATA--
16 | return array()
17 | --EXCEPTION--
18 | Twig_Error_Runtime: Variable "foobar" does not exist in "index.twig" at line 7
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/date_namedargs.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "date" function
3 | --TEMPLATE--
4 | {{ date(date, "America/New_York")|date('d/m/Y H:i:s P', false) }}
5 | {{ date(timezone="America/New_York", date=date)|date('d/m/Y H:i:s P', false) }}
6 | --DATA--
7 | date_default_timezone_set('UTC');
8 | return array('date' => mktime(13, 45, 0, 10, 4, 2010))
9 | --EXPECT--
10 | 04/10/2010 09:45:00 -04:00
11 | 04/10/2010 09:45:00 -04:00
12 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/nested_inheritance.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "extends" tag
3 | --TEMPLATE--
4 | {% extends "layout.twig" %}
5 | {% block inside %}INSIDE{% endblock inside %}
6 | --TEMPLATE(layout.twig)--
7 | {% extends "base.twig" %}
8 | {% block body %}
9 | {% block inside '' %}
10 | {% endblock body %}
11 | --TEMPLATE(base.twig)--
12 | {% block body '' %}
13 | --DATA--
14 | return array()
15 | --EXPECT--
16 | INSIDE
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/unclosed_tag.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Exception for an unclosed tag
3 | --TEMPLATE--
4 | {% block foo %}
5 | {% if foo %}
6 |
7 |
8 |
9 |
10 | {% for i in fo %}
11 |
12 |
13 |
14 | {% endfor %}
15 |
16 |
17 |
18 | {% endblock %}
19 | --EXCEPTION--
20 | Twig_Error_Syntax: Unexpected tag name "endblock" (expecting closing tag for the "if" tag defined near line 4) in "index.twig" at line 16
21 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_modify.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "date_modify" filter
3 | --TEMPLATE--
4 | {{ date1|date_modify('-1day')|date('Y-m-d H:i:s') }}
5 | {{ date2|date_modify('-1day')|date('Y-m-d H:i:s') }}
6 | --DATA--
7 | date_default_timezone_set('UTC');
8 | return array(
9 | 'date1' => '2010-10-04 13:45',
10 | 'date2' => new DateTime('2010-10-04 13:45'),
11 | )
12 | --EXPECT--
13 | 2010-10-03 13:45:00
14 | 2010-10-03 13:45:00
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/missing_nested.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" tag
3 | --TEMPLATE--
4 | {% extends "base.twig" %}
5 |
6 | {% block content %}
7 | {{ parent() }}
8 | {% endblock %}
9 | --TEMPLATE(base.twig)--
10 | {% block content %}
11 | {% include "foo.twig" %}
12 | {% endblock %}
13 | --DATA--
14 | return array();
15 | --EXCEPTION--
16 | Twig_Error_Loader: Template "foo.twig" is not defined in "base.twig" at line 3.
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/conditional.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "extends" tag
3 | --TEMPLATE--
4 | {% extends standalone ? foo : 'bar.twig' %}
5 |
6 | {% block content %}{{ parent() }}FOO{% endblock %}
7 | --TEMPLATE(foo.twig)--
8 | {% block content %}FOO{% endblock %}
9 | --TEMPLATE(bar.twig)--
10 | {% block content %}BAR{% endblock %}
11 | --DATA--
12 | return array('foo' => 'foo.twig', 'standalone' => true)
13 | --EXPECT--
14 | FOOFOO
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tests/sameas.rst:
--------------------------------------------------------------------------------
1 | ``same as``
2 | ===========
3 |
4 | .. versionadded:: 1.14.2
5 | The ``same as`` test was added in Twig 1.14.2 as an alias for ``sameas``.
6 |
7 | ``same as`` checks if a variable is the same as another variable.
8 | This is the equivalent to ``===`` in PHP:
9 |
10 | .. code-block:: jinja
11 |
12 | {% if foo.attribute is same as(false) %}
13 | the foo attribute really is the 'false' PHP value
14 | {% endif %}
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/combined_debug_info.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Exception with bad line number
3 | --TEMPLATE--
4 | {% block content %}
5 | {{ foo }}
6 | {{ include("foo") }}
7 | {% endblock %}
8 | index
9 | --TEMPLATE(foo)--
10 | foo
11 | {{ foo.bar }}
12 | --DATA--
13 | return array('foo' => 'foo');
14 | --EXCEPTION--
15 | Twig_Error_Runtime: Impossible to access an attribute ("bar") on a string variable ("foo") in "foo" at line 3
16 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/exceptions/multiline_array_with_undefined_variable.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Exception for multiline array with undefined variable
3 | --TEMPLATE--
4 | {% set foo = {
5 | foo: 'foo',
6 | bar: 'bar',
7 |
8 |
9 | foobar: foobar,
10 |
11 |
12 |
13 | foo2: foo2,
14 | } %}
15 | --DATA--
16 | return array('foobar' => 'foobar')
17 | --EXCEPTION--
18 | Twig_Error_Runtime: Variable "foo2" does not exist in "index.twig" at line 11
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/missing_nested.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" function
3 | --TEMPLATE--
4 | {% extends "base.twig" %}
5 |
6 | {% block content %}
7 | {{ parent() }}
8 | {% endblock %}
9 | --TEMPLATE(base.twig)--
10 | {% block content %}
11 | {{ include("foo.twig") }}
12 | {% endblock %}
13 | --DATA--
14 | return array();
15 | --EXCEPTION--
16 | Twig_Error_Loader: Template "foo.twig" is not defined in "base.twig" at line 3.
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/NodeOutputInterface.php:
--------------------------------------------------------------------------------
1 |
16 | */
17 | interface Twig_NodeOutputInterface
18 | {
19 | }
20 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/deep.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "use" tag
3 | --TEMPLATE--
4 | {% use "foo.twig" %}
5 |
6 | {{ block('content') }}
7 | {{ block('foo') }}
8 | {{ block('bar') }}
9 | --TEMPLATE(foo.twig)--
10 | {% use "bar.twig" %}
11 |
12 | {% block content 'foo' %}
13 | {% block foo 'foo' %}
14 | --TEMPLATE(bar.twig)--
15 | {% block content 'bar' %}
16 | {% block bar 'bar' %}
17 | --DATA--
18 | return array()
19 | --EXPECT--
20 | foo
21 | foo
22 | bar
23 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/multiple.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "use" tag
3 | --TEMPLATE--
4 | {% use "foo.twig" %}
5 | {% use "bar.twig" %}
6 |
7 | {{ block('content') }}
8 | {{ block('foo') }}
9 | {{ block('bar') }}
10 | --TEMPLATE(foo.twig)--
11 | {% block content 'foo' %}
12 | {% block foo 'foo' %}
13 | --TEMPLATE(bar.twig)--
14 | {% block content 'bar' %}
15 | {% block bar 'bar' %}
16 | --DATA--
17 | return array()
18 | --EXPECT--
19 | bar
20 | foo
21 | bar
22 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/in_with_objects.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports the in operator when using objects
3 | --TEMPLATE--
4 | {% if object in object_list %}
5 | TRUE
6 | {% endif %}
7 | --DATA--
8 | $foo = new TwigTestFoo();
9 | $foo1 = new TwigTestFoo();
10 |
11 | $foo->position = $foo1;
12 | $foo1->position = $foo;
13 |
14 | return array(
15 | 'object' => $foo,
16 | 'object_list' => array($foo1, $foo),
17 | );
18 | --EXPECT--
19 | TRUE
20 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/autoescape/filename.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "filename" autoescape strategy
3 | --TEMPLATE--
4 | {{ br -}}
5 | {{ include('index.html.twig') -}}
6 | {{ include('index.txt.twig') -}}
7 | --TEMPLATE(index.html.twig)--
8 | {{ br -}}
9 | --TEMPLATE(index.txt.twig)--
10 | {{ br -}}
11 | --DATA--
12 | return array('br' => '
')
13 | --CONFIG--
14 | return array('autoescape' => 'filename')
15 | --EXPECT--
16 | <br />
17 | <br />
18 |
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/sameas.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports the "same as" operator
3 | --TEMPLATE--
4 | {{ 1 is same as(1) ? 'OK' }}
5 | {{ 1 is not same as(true) ? 'OK' }}
6 | {{ 1 is same as(1) ? 'OK' }}
7 | {{ 1 is not same as(true) ? 'OK' }}
8 | {{ 1 is same as (1) ? 'OK' }}
9 | {{ 1 is not
10 | same
11 | as
12 | (true) ? 'OK' }}
13 | --DATA--
14 | return array()
15 | --EXPECT--
16 | OK
17 | OK
18 | OK
19 | OK
20 | OK
21 | OK
22 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/sandbox/simple.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | sandbox tag
3 | --TEMPLATE--
4 | {%- sandbox %}
5 | {%- include "foo.twig" %}
6 | {%- endsandbox %}
7 |
8 | {%- sandbox %}
9 | {%- include "foo.twig" %}
10 | {%- include "foo.twig" %}
11 | {%- endsandbox %}
12 |
13 | {%- sandbox %}{% include "foo.twig" %}{% endsandbox %}
14 | --TEMPLATE(foo.twig)--
15 | foo
16 | --DATA--
17 | return array()
18 | --EXPECT--
19 | foo
20 | foo
21 | foo
22 | foo
23 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/constant.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "const" test
3 | --TEMPLATE--
4 | {{ 8 is constant('E_NOTICE') ? 'ok' : 'no' }}
5 | {{ 'bar' is constant('TwigTestFoo::BAR_NAME') ? 'ok' : 'no' }}
6 | {{ value is constant('TwigTestFoo::BAR_NAME') ? 'ok' : 'no' }}
7 | {{ 2 is constant('ARRAY_AS_PROPS', object) ? 'ok' : 'no' }}
8 | --DATA--
9 | return array('value' => 'bar', 'object' => new ArrayObject(array('hi')));
10 | --EXPECT--
11 | ok
12 | ok
13 | ok
14 | ok
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/from.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "macro" tag
3 | --TEMPLATE--
4 | {% from 'forms.twig' import foo %}
5 | {% from 'forms.twig' import foo as foobar, bar %}
6 |
7 | {{ foo('foo') }}
8 | {{ foobar('foo') }}
9 | {{ bar('foo') }}
10 | --TEMPLATE(forms.twig)--
11 | {% macro foo(name) %}foo{{ name }}{% endmacro %}
12 | {% macro bar(name) %}bar{{ name }}{% endmacro %}
13 | --DATA--
14 | return array()
15 | --EXPECT--
16 | foofoo
17 | foofoo
18 | barfoo
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/format.rst:
--------------------------------------------------------------------------------
1 | ``format``
2 | ==========
3 |
4 | The ``format`` filter formats a given string by replacing the placeholders
5 | (placeholders follows the `sprintf`_ notation):
6 |
7 | .. code-block:: jinja
8 |
9 | {{ "I like %s and %s."|format(foo, "bar") }}
10 |
11 | {# outputs I like foo and bar
12 | if the foo parameter equals to the foo string. #}
13 |
14 | .. _`sprintf`: http://www.php.net/sprintf
15 |
16 | .. seealso:: :doc:`replace`
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ternary_operator.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports the ternary operator
3 | --TEMPLATE--
4 | {{ 1 ? 'YES' : 'NO' }}
5 | {{ 0 ? 'YES' : 'NO' }}
6 | {{ 0 ? 'YES' : (1 ? 'YES1' : 'NO1') }}
7 | {{ 0 ? 'YES' : (0 ? 'YES1' : 'NO1') }}
8 | {{ 1 == 1 ? 'foo
':'' }}
9 | {{ foo ~ (bar ? ('-' ~ bar) : '') }}
10 | --DATA--
11 | return array('foo' => 'foo', 'bar' => 'bar')
12 | --EXPECT--
13 | YES
14 | NO
15 | YES1
16 | NO1
17 | foo
18 | foo-bar
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/merge.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "merge" filter
3 | --TEMPLATE--
4 | {{ items|merge({'bar': 'foo'})|join }}
5 | {{ items|merge({'bar': 'foo'})|keys|join }}
6 | {{ {'bar': 'foo'}|merge(items)|join }}
7 | {{ {'bar': 'foo'}|merge(items)|keys|join }}
8 | {{ numerics|merge([4, 5, 6])|join }}
9 | --DATA--
10 | return array('items' => array('foo' => 'bar'), 'numerics' => array(1, 2, 3))
11 | --EXPECT--
12 | barfoo
13 | foobar
14 | foobar
15 | barfoo
16 | 123456
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/nl2br.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "nl2br" filter
3 | --TEMPLATE--
4 | {{ "I like Twig.\nYou will like it too.\n\nEverybody like it!"|nl2br }}
5 | {{ text|nl2br }}
6 | --DATA--
7 | return array('text' => "If you have some HTML\nit will be escaped.")
8 | --EXPECT--
9 | I like Twig.
10 | You will like it too.
11 |
12 | Everybody like it!
13 | If you have some <strong>HTML</strong>
14 | it will be escaped.
15 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/iterable.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "iterable" test
3 | --TEMPLATE--
4 | {{ foo is iterable ? 'ok' : 'ko' }}
5 | {{ traversable is iterable ? 'ok' : 'ko' }}
6 | {{ obj is iterable ? 'ok' : 'ko' }}
7 | {{ val is iterable ? 'ok' : 'ko' }}
8 | --DATA--
9 | return array(
10 | 'foo' => array(),
11 | 'traversable' => new ArrayIterator(array()),
12 | 'obj' => new stdClass(),
13 | 'val' => 'test',
14 | );
15 | --EXPECT--
16 | ok
17 | ok
18 | ko
19 | ko
--------------------------------------------------------------------------------
/vendor/twig/twig/ext/twig/.gitignore:
--------------------------------------------------------------------------------
1 | *.sw*
2 | .deps
3 | Makefile
4 | Makefile.fragments
5 | Makefile.global
6 | Makefile.objects
7 | acinclude.m4
8 | aclocal.m4
9 | build/
10 | config.cache
11 | config.guess
12 | config.h
13 | config.h.in
14 | config.log
15 | config.nice
16 | config.status
17 | config.sub
18 | configure
19 | configure.in
20 | install-sh
21 | libtool
22 | ltmain.sh
23 | missing
24 | mkinstalldirs
25 | run-tests.php
26 | twig.loT
27 | .libs/
28 | modules/
29 | twig.la
30 | twig.lo
31 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/recursive.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "for" tags can be nested
3 | --TEMPLATE--
4 | {% for key, item in items %}
5 | * {{ key }} ({{ loop.length }}):
6 | {% for value in item %}
7 | * {{ value }} ({{ loop.length }})
8 | {% endfor %}
9 | {% endfor %}
10 | --DATA--
11 | return array('items' => array('a' => array('a1', 'a2', 'a3'), 'b' => array('b1')))
12 | --EXPECT--
13 | * a (2):
14 | * a1 (3)
15 | * a2 (3)
16 | * a3 (3)
17 | * b (2):
18 | * b1 (1)
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/loop_context.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "for" tag adds a loop variable to the context
3 | --TEMPLATE--
4 | {% for item in items %}
5 | * {{ loop.index }}/{{ loop.index0 }}
6 | * {{ loop.revindex }}/{{ loop.revindex0 }}
7 | * {{ loop.first }}/{{ loop.last }}/{{ loop.length }}
8 |
9 | {% endfor %}
10 | --DATA--
11 | return array('items' => array('a', 'b'))
12 | --EXPECT--
13 | * 1/0
14 | * 2/1
15 | * 1//2
16 |
17 | * 2/1
18 | * 1/0
19 | * /1/2
20 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/Equal.php:
--------------------------------------------------------------------------------
1 | raw('==');
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/Less.php:
--------------------------------------------------------------------------------
1 | raw('<');
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Sandbox/SecurityError.php:
--------------------------------------------------------------------------------
1 |
16 | */
17 | class Twig_Sandbox_SecurityError extends Twig_Error
18 | {
19 | }
20 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/macros/simple.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | macro
3 | --TEMPLATE--
4 | {% import _self as test %}
5 | {% from _self import test %}
6 |
7 | {% macro test(a, b) -%}
8 | {{ a|default('a') }}
9 | {{- b|default('b') }}
10 | {%- endmacro %}
11 |
12 | {{ test.test() }}
13 | {{ test() }}
14 | {{ test.test(1, "c") }}
15 | {{ test(1, "c") }}
16 | --DATA--
17 | return array();
18 | --EXPECT--
19 | a
b
20 | a
b
21 | 1
c
22 | 1
c
23 |
--------------------------------------------------------------------------------
/app/home/home.php:
--------------------------------------------------------------------------------
1 | name);
10 | $this->set("test", "PriMer Test");
11 | $this->set("go", "SEGUNDO");
12 | }
13 |
14 | function lower_case($txt){
15 | return strtolower($txt);
16 | }
17 |
18 | function not_a_filter($txt){
19 | return strtoupper($txt);
20 | }
21 |
22 | }
23 |
24 | ?>
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/Greater.php:
--------------------------------------------------------------------------------
1 | raw('>');
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/functions/min.rst:
--------------------------------------------------------------------------------
1 | ``min``
2 | =======
3 |
4 | .. versionadded:: 1.15
5 | The ``min`` function was added in Twig 1.15.
6 |
7 | ``min`` returns the lowest value of a sequence or a set of values:
8 |
9 | .. code-block:: jinja
10 |
11 | {{ min(1, 3, 2) }}
12 | {{ min([1, 3, 2]) }}
13 |
14 | When called with a mapping, min ignores keys and only compares values:
15 |
16 | .. code-block:: jinja
17 |
18 | {{ min({2: "e", 3: "a", 1: "b", 5: "d", 4: "c"}) }}
19 | {# returns "a" #}
20 |
21 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tags/block.rst:
--------------------------------------------------------------------------------
1 | ``block``
2 | =========
3 |
4 | Blocks are used for inheritance and act as placeholders and replacements at
5 | the same time. They are documented in detail in the documentation for the
6 | :doc:`extends<../tags/extends>` tag.
7 |
8 | Block names should consist of alphanumeric characters, and underscores. Dashes
9 | are not permitted.
10 |
11 | .. seealso:: :doc:`block<../functions/block>`, :doc:`parent<../functions/parent>`, :doc:`use<../tags/use>`, :doc:`extends<../tags/extends>`
12 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Error/Runtime.php:
--------------------------------------------------------------------------------
1 |
17 | */
18 | class Twig_Error_Runtime extends Twig_Error
19 | {
20 | }
21 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/LessEqual.php:
--------------------------------------------------------------------------------
1 | raw('<=');
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/NotEqual.php:
--------------------------------------------------------------------------------
1 | raw('!=');
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_default_format_interval.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "date" filter (interval support as of PHP 5.3)
3 | --CONDITION--
4 | version_compare(phpversion(), '5.3.0', '>=')
5 | --TEMPLATE--
6 | {{ date2|date }}
7 | {{ date2|date('%d days') }}
8 | --DATA--
9 | date_default_timezone_set('UTC');
10 | $twig->getExtension('core')->setDateFormat('Y-m-d', '%d days %h hours');
11 | return array(
12 | 'date2' => new DateInterval('P2D'),
13 | )
14 | --EXPECT--
15 | 2 days 0 hours
16 | 2 days
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/for/else.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "for" tag can use an "else" clause
3 | --TEMPLATE--
4 | {% for item in items %}
5 | * {{ item }}
6 | {% else %}
7 | no item
8 | {% endfor %}
9 | --DATA--
10 | return array('items' => array('a', 'b'))
11 | --EXPECT--
12 | * a
13 | * b
14 | --DATA--
15 | return array('items' => array())
16 | --EXPECT--
17 | no item
18 | --DATA--
19 | return array()
20 | --CONFIG--
21 | return array('strict_variables' => false)
22 | --EXPECT--
23 | no item
24 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/functions/max.rst:
--------------------------------------------------------------------------------
1 | ``max``
2 | =======
3 |
4 | .. versionadded:: 1.15
5 | The ``max`` function was added in Twig 1.15.
6 |
7 | ``max`` returns the biggest value of a sequence or a set of values:
8 |
9 | .. code-block:: jinja
10 |
11 | {{ max(1, 3, 2) }}
12 | {{ max([1, 3, 2]) }}
13 |
14 | When called with a mapping, max ignores keys and only compares values:
15 |
16 | .. code-block:: jinja
17 |
18 | {{ max({2: "e", 1: "a", 3: "b", 5: "d", 4: "c"}) }}
19 | {# returns "e" #}
20 |
21 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/GreaterEqual.php:
--------------------------------------------------------------------------------
1 | raw('>=');
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Unary/Neg.php:
--------------------------------------------------------------------------------
1 | raw('-');
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Unary/Not.php:
--------------------------------------------------------------------------------
1 | raw('!');
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Unary/Pos.php:
--------------------------------------------------------------------------------
1 | raw('+');
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_namedargs.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "date" filter
3 | --TEMPLATE--
4 | {{ date|date(format='d/m/Y H:i:s P', timezone='America/Chicago') }}
5 | {{ date|date(timezone='America/Chicago', format='d/m/Y H:i:s P') }}
6 | {{ date|date('d/m/Y H:i:s P', timezone='America/Chicago') }}
7 | --DATA--
8 | date_default_timezone_set('UTC');
9 | return array('date' => mktime(13, 45, 0, 10, 4, 2010))
10 | --EXPECT--
11 | 04/10/2010 08:45:00 -05:00
12 | 04/10/2010 08:45:00 -05:00
13 | 04/10/2010 08:45:00 -05:00
14 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_nested.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "extends" tag
3 | --TEMPLATE--
4 | {% extends "foo.twig" %}
5 |
6 | {% block content %}
7 | {% block inside %}
8 | INSIDE OVERRIDDEN
9 | {% endblock %}
10 |
11 | BEFORE
12 | {{ parent() }}
13 | AFTER
14 | {% endblock %}
15 | --TEMPLATE(foo.twig)--
16 | {% block content %}
17 | BAR
18 | {% endblock %}
19 | --DATA--
20 | return array()
21 | --EXPECT--
22 |
23 | INSIDE OVERRIDDEN
24 |
25 | BEFORE
26 | BAR
27 |
28 | AFTER
29 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression.php:
--------------------------------------------------------------------------------
1 |
17 | */
18 | abstract class Twig_Node_Expression extends Twig_Node
19 | {
20 | }
21 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/Add.php:
--------------------------------------------------------------------------------
1 | raw('+');
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/And.php:
--------------------------------------------------------------------------------
1 | raw('&&');
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/Div.php:
--------------------------------------------------------------------------------
1 | raw('/');
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/Mod.php:
--------------------------------------------------------------------------------
1 | raw('%');
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/Mul.php:
--------------------------------------------------------------------------------
1 | raw('*');
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/Or.php:
--------------------------------------------------------------------------------
1 | raw('||');
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/Sub.php:
--------------------------------------------------------------------------------
1 | raw('-');
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/include/only.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" tag accept variables and only
3 | --TEMPLATE--
4 | {% include "foo.twig" %}
5 | {% include "foo.twig" only %}
6 | {% include "foo.twig" with {'foo1': 'bar'} %}
7 | {% include "foo.twig" with {'foo1': 'bar'} only %}
8 | --TEMPLATE(foo.twig)--
9 | {% for k, v in _context %}{{ k }},{% endfor %}
10 | --DATA--
11 | return array('foo' => 'bar')
12 | --EXPECT--
13 | foo,global,_parent,
14 | global,_parent,
15 | foo,global,foo1,_parent,
16 | foo1,global,_parent,
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tests/array.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | array index test
3 | --TEMPLATE--
4 | {% for key, value in days %}
5 | {{ key }}
6 | {% endfor %}
7 | --DATA--
8 | return array('days' => array(
9 | 1 => array('money' => 9),
10 | 2 => array('money' => 21),
11 | 3 => array('money' => 38),
12 | 4 => array('money' => 6),
13 | 18 => array('money' => 6),
14 | 19 => array('money' => 3),
15 | 31 => array('money' => 11),
16 | ));
17 | --EXPECT--
18 | 1
19 | 2
20 | 3
21 | 4
22 | 18
23 | 19
24 | 31
25 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/replace.rst:
--------------------------------------------------------------------------------
1 | ``replace``
2 | ===========
3 |
4 | The ``replace`` filter formats a given string by replacing the placeholders
5 | (placeholders are free-form):
6 |
7 | .. code-block:: jinja
8 |
9 | {{ "I like %this% and %that%."|replace({'%this%': foo, '%that%': "bar"}) }}
10 |
11 | {# outputs I like foo and bar
12 | if the foo parameter equals to the foo string. #}
13 |
14 | Arguments
15 | ---------
16 |
17 | * ``replace_pairs``: The placeholder values
18 |
19 | .. seealso:: :doc:`format`
20 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/functions/constant.rst:
--------------------------------------------------------------------------------
1 | ``constant``
2 | ============
3 |
4 | .. versionadded: 1.12.1
5 | constant now accepts object instances as the second argument.
6 |
7 | ``constant`` returns the constant value for a given string:
8 |
9 | .. code-block:: jinja
10 |
11 | {{ some_date|date(constant('DATE_W3C')) }}
12 | {{ constant('Namespace\\Classname::CONSTANT_NAME') }}
13 |
14 | As of 1.12.1 you can read constants from object instances as well:
15 |
16 | .. code-block:: jinja
17 |
18 | {{ constant('RSS', date) }}
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/Concat.php:
--------------------------------------------------------------------------------
1 | raw('.');
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Error/Syntax.php:
--------------------------------------------------------------------------------
1 |
17 | */
18 | class Twig_Error_Syntax extends Twig_Error
19 | {
20 | }
21 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/BitwiseOr.php:
--------------------------------------------------------------------------------
1 | raw('|');
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/multiple_aliases.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "use" tag
3 | --TEMPLATE--
4 | {% use "foo.twig" with content as foo_content %}
5 | {% use "bar.twig" %}
6 |
7 | {{ block('content') }}
8 | {{ block('foo') }}
9 | {{ block('bar') }}
10 | {{ block('foo_content') }}
11 | --TEMPLATE(foo.twig)--
12 | {% block content 'foo' %}
13 | {% block foo 'foo' %}
14 | --TEMPLATE(bar.twig)--
15 | {% block content 'bar' %}
16 | {% block bar 'bar' %}
17 | --DATA--
18 | return array()
19 | --EXPECT--
20 | bar
21 | foo
22 | bar
23 | foo
24 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/nl2br.rst:
--------------------------------------------------------------------------------
1 | ``nl2br``
2 | =========
3 |
4 | .. versionadded:: 1.5
5 | The ``nl2br`` filter was added in Twig 1.5.
6 |
7 | The ``nl2br`` filter inserts HTML line breaks before all newlines in a string:
8 |
9 | .. code-block:: jinja
10 |
11 | {{ "I like Twig.\nYou will like it too."|nl2br }}
12 | {# outputs
13 |
14 | I like Twig.
15 | You will like it too.
16 |
17 | #}
18 |
19 | .. note::
20 |
21 | The ``nl2br`` filter pre-escapes the input before applying the
22 | transformation.
23 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/BitwiseAnd.php:
--------------------------------------------------------------------------------
1 | raw('&');
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/BitwiseXor.php:
--------------------------------------------------------------------------------
1 | raw('^');
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/strategy.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "autoescape" tag accepts an escaping strategy
3 | --TEMPLATE--
4 | {% autoescape true js %}{{ var }}{% endautoescape %}
5 |
6 | {% autoescape true html %}{{ var }}{% endautoescape %}
7 |
8 | {% autoescape 'js' %}{{ var }}{% endautoescape %}
9 |
10 | {% autoescape 'html' %}{{ var }}{% endautoescape %}
11 | --DATA--
12 | return array('var' => '
"')
13 | --EXPECT--
14 | \x3Cbr\x20\x2F\x3E\x22
15 | <br />"
16 | \x3Cbr\x20\x2F\x3E\x22
17 | <br />"
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/join.rst:
--------------------------------------------------------------------------------
1 | ``join``
2 | ========
3 |
4 | The ``join`` filter returns a string which is the concatenation of the items
5 | of a sequence:
6 |
7 | .. code-block:: jinja
8 |
9 | {{ [1, 2, 3]|join }}
10 | {# returns 123 #}
11 |
12 | The separator between elements is an empty string per default, but you can
13 | define it with the optional first parameter:
14 |
15 | .. code-block:: jinja
16 |
17 | {{ [1, 2, 3]|join('|') }}
18 | {# outputs 1|2|3 #}
19 |
20 | Arguments
21 | ---------
22 |
23 | * ``glue``: The separator
24 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/reverse.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "reverse" filter
3 | --TEMPLATE--
4 | {{ [1, 2, 3, 4]|reverse|join('') }}
5 | {{ '1234évènement'|reverse }}
6 | {{ arr|reverse|join('') }}
7 | {{ {'a': 'c', 'b': 'a'}|reverse()|join(',') }}
8 | {{ {'a': 'c', 'b': 'a'}|reverse(preserveKeys=true)|join(glue=',') }}
9 | {{ {'a': 'c', 'b': 'a'}|reverse(preserve_keys=true)|join(glue=',') }}
10 | --DATA--
11 | return array('arr' => new ArrayObject(array(1, 2, 3, 4)))
12 | --EXPECT--
13 | 4321
14 | tnemenèvé4321
15 | 4321
16 | a,c
17 | a,c
18 | a,c
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/nested_blocks.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "block" tag
3 | --TEMPLATE--
4 | {% extends "foo.twig" %}
5 |
6 | {% block content %}
7 | {% block subcontent %}
8 | {% block subsubcontent %}
9 | SUBSUBCONTENT
10 | {% endblock %}
11 | {% endblock %}
12 | {% endblock %}
13 | --TEMPLATE(foo.twig)--
14 | {% block content %}
15 | {% block subcontent %}
16 | SUBCONTENT
17 | {% endblock %}
18 | {% endblock %}
19 | --DATA--
20 | return array()
21 | --EXPECT--
22 | SUBSUBCONTENT
23 |
--------------------------------------------------------------------------------
/vendor/twig/twig/README.rst:
--------------------------------------------------------------------------------
1 | Twig, the flexible, fast, and secure template language for PHP
2 | ==============================================================
3 |
4 | Twig is a template language for PHP, released under the new BSD license (code
5 | and documentation).
6 |
7 | Twig uses a syntax similar to the Django and Jinja template languages which
8 | inspired the Twig runtime environment.
9 |
10 | More Information
11 | ----------------
12 |
13 | Read the `documentation`_ for more information.
14 |
15 | .. _documentation: http://twig.sensiolabs.org/documentation
16 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/TestCallableInterface.php:
--------------------------------------------------------------------------------
1 |
16 | * @deprecated since 1.12 (to be removed in 2.0)
17 | */
18 | interface Twig_TestCallableInterface
19 | {
20 | public function getCallable();
21 | }
22 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/filter/with_if_tag.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "filter" tag applies the filter on "if" tags
3 | --TEMPLATE--
4 | {% filter upper %}
5 | {% if items %}
6 | {{ items|join(', ') }}
7 | {% endif %}
8 |
9 | {% if items.3 is defined %}
10 | FOO
11 | {% else %}
12 | {{ items.1 }}
13 | {% endif %}
14 |
15 | {% if items.3 is defined %}
16 | FOO
17 | {% elseif items.1 %}
18 | {{ items.0 }}
19 | {% endif %}
20 |
21 | {% endfilter %}
22 | --DATA--
23 | return array('items' => array('a', 'b'))
24 | --EXPECT--
25 | A, B
26 |
27 | B
28 |
29 | A
30 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tests/iterable.rst:
--------------------------------------------------------------------------------
1 | ``iterable``
2 | ============
3 |
4 | .. versionadded:: 1.7
5 | The iterable test was added in Twig 1.7.
6 |
7 | ``iterable`` checks if a variable is an array or a traversable object:
8 |
9 | .. code-block:: jinja
10 |
11 | {# evaluates to true if the foo variable is iterable #}
12 | {% if users is iterable %}
13 | {% for user in users %}
14 | Hello {{ user }}!
15 | {% endfor %}
16 | {% else %}
17 | {# users is probably a string #}
18 | Hello {{ users }}!
19 | {% endif %}
20 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tags/filter.rst:
--------------------------------------------------------------------------------
1 | ``filter``
2 | ==========
3 |
4 | Filter sections allow you to apply regular Twig filters on a block of template
5 | data. Just wrap the code in the special ``filter`` section:
6 |
7 | .. code-block:: jinja
8 |
9 | {% filter upper %}
10 | This text becomes uppercase
11 | {% endfilter %}
12 |
13 | You can also chain filters:
14 |
15 | .. code-block:: jinja
16 |
17 | {% filter lower|escape %}
18 | SOME TEXT
19 | {% endfilter %}
20 |
21 | {# outputs "<strong>some text</strong>" #}
22 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/abs.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "abs" filter
3 | --TEMPLATE--
4 | {{ (-5.5)|abs }}
5 | {{ (-5)|abs }}
6 | {{ (-0)|abs }}
7 | {{ 0|abs }}
8 | {{ 5|abs }}
9 | {{ 5.5|abs }}
10 | {{ number1|abs }}
11 | {{ number2|abs }}
12 | {{ number3|abs }}
13 | {{ number4|abs }}
14 | {{ number5|abs }}
15 | {{ number6|abs }}
16 | --DATA--
17 | return array('number1' => -5.5, 'number2' => -5, 'number3' => -0, 'number4' => 0, 'number5' => 5, 'number6' => 5.5)
18 | --EXPECT--
19 | 5.5
20 | 5
21 | 0
22 | 0
23 | 5
24 | 5.5
25 | 5.5
26 | 5
27 | 0
28 | 0
29 | 5
30 | 5.5
31 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/number_format_default.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "number_format" filter with defaults.
3 | --TEMPLATE--
4 | {{ 20|number_format }}
5 | {{ 20.25|number_format }}
6 | {{ 20.25|number_format(1) }}
7 | {{ 20.25|number_format(2, ',') }}
8 | {{ 1020.25|number_format }}
9 | {{ 1020.25|number_format(2, ',') }}
10 | {{ 1020.25|number_format(2, ',', '.') }}
11 | --DATA--
12 | $twig->getExtension('core')->setNumberFormat(2, '!', '=');
13 | return array();
14 | --EXPECT--
15 | 20!00
16 | 20!25
17 | 20!3
18 | 20,25
19 | 1=020!25
20 | 1=020,25
21 | 1.020,25
22 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/template_from_string.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "template_from_string" function
3 | --TEMPLATE--
4 | {% include template_from_string(template) %}
5 |
6 | {% include template_from_string("Hello {{ name }}") %}
7 | {% include template_from_string('{% extends "parent.twig" %}{% block content %}Hello {{ name }}{% endblock %}') %}
8 | --TEMPLATE(parent.twig)--
9 | {% block content %}{% endblock %}
10 | --DATA--
11 | return array('name' => 'Fabien', 'template' => "Hello {{ name }}")
12 | --EXPECT--
13 | Hello Fabien
14 | Hello Fabien
15 | Hello Fabien
16 |
--------------------------------------------------------------------------------
/core/page.php:
--------------------------------------------------------------------------------
1 | name = $name;
11 | $this->dir = strtolower($name) . '/' . strtolower($name);
12 | $this->vars = array();
13 | $this->extension = array(
14 | 'template' => '.html',
15 | 'code' => '.php');
16 | }
17 |
18 | function set($variable, $content){
19 |
20 | $this->vars[$variable] = $content;
21 | }
22 |
23 | function templateDir(){
24 | return $this->dir . $this->extension['template'];
25 | }
26 | }
27 | ?>
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/include/with_context.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "include" function accept variables and with_context
3 | --TEMPLATE--
4 | {{ include("foo.twig") }}
5 | {{- include("foo.twig", with_context = false) }}
6 | {{- include("foo.twig", {'foo1': 'bar'}) }}
7 | {{- include("foo.twig", {'foo1': 'bar'}, with_context = false) }}
8 | --TEMPLATE(foo.twig)--
9 | {% for k, v in _context %}{{ k }},{% endfor %}
10 | --DATA--
11 | return array('foo' => 'bar')
12 | --EXPECT--
13 | foo,global,_parent,
14 | global,_parent,
15 | foo,global,foo1,_parent,
16 | foo1,global,_parent,
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/basic.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "embed" tag
3 | --TEMPLATE--
4 | FOO
5 | {% embed "foo.twig" %}
6 | {% block c1 %}
7 | {{ parent() }}
8 | block1extended
9 | {% endblock %}
10 | {% endembed %}
11 |
12 | BAR
13 | --TEMPLATE(foo.twig)--
14 | A
15 | {% block c1 %}
16 | block1
17 | {% endblock %}
18 | B
19 | {% block c2 %}
20 | block2
21 | {% endblock %}
22 | C
23 | --DATA--
24 | return array()
25 | --EXPECT--
26 | FOO
27 |
28 | A
29 | block1
30 |
31 | block1extended
32 | B
33 | block2
34 | C
35 | BAR
36 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/index.rst:
--------------------------------------------------------------------------------
1 | Filters
2 | =======
3 |
4 | .. toctree::
5 | :maxdepth: 1
6 |
7 | abs
8 | batch
9 | capitalize
10 | convert_encoding
11 | date
12 | date_modify
13 | default
14 | escape
15 | first
16 | format
17 | join
18 | json_encode
19 | keys
20 | last
21 | length
22 | lower
23 | merge
24 | nl2br
25 | number_format
26 | raw
27 | replace
28 | reverse
29 | round
30 | slice
31 | sort
32 | split
33 | striptags
34 | title
35 | trim
36 | upper
37 | url_encode
38 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/json_encode.rst:
--------------------------------------------------------------------------------
1 | ``json_encode``
2 | ===============
3 |
4 | The ``json_encode`` filter returns the JSON representation of a value:
5 |
6 | .. code-block:: jinja
7 |
8 | {{ data|json_encode() }}
9 |
10 | .. note::
11 |
12 | Internally, Twig uses the PHP `json_encode`_ function.
13 |
14 | Arguments
15 | ---------
16 |
17 | * ``options``: A bitmask of `json_encode options`_ (``{{
18 | data|json_encode(constant('JSON_PRETTY_PRINT')) }}``)
19 |
20 | .. _`json_encode`: http://php.net/json_encode
21 | .. _`json_encode options`: http://www.php.net/manual/en/json.constants.php
22 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/basic.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "macro" tag
3 | --TEMPLATE--
4 | {% import _self as macros %}
5 |
6 | {{ macros.input('username') }}
7 | {{ macros.input('password', null, 'password', 1) }}
8 |
9 | {% macro input(name, value, type, size) %}
10 |
11 | {% endmacro %}
12 | --DATA--
13 | return array()
14 | --EXPECT--
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/self_import.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "macro" tag
3 | --TEMPLATE--
4 | {% import _self as forms %}
5 |
6 | {{ forms.input('username') }}
7 | {{ forms.input('password', null, 'password', 1) }}
8 |
9 | {% macro input(name, value, type, size) %}
10 |
11 | {% endmacro %}
12 | --DATA--
13 | return array()
14 | --EXPECT--
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/FilterCallableInterface.php:
--------------------------------------------------------------------------------
1 |
18 | * @deprecated since 1.12 (to be removed in 2.0)
19 | */
20 | interface Twig_FilterCallableInterface
21 | {
22 | public function getCallable();
23 | }
24 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/split.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "split" filter
3 | --TEMPLATE--
4 | {{ "one,two,three,four,five"|split(',')|join('-') }}
5 | {{ foo|split(',')|join('-') }}
6 | {{ foo|split(',', 3)|join('-') }}
7 | {{ baz|split('')|join('-') }}
8 | {{ baz|split('', 1)|join('-') }}
9 | {{ baz|split('', 2)|join('-') }}
10 | {{ foo|split(',', -2)|join('-') }}
11 | --DATA--
12 | return array('foo' => "one,two,three,four,five", 'baz' => '12345',)
13 | --EXPECT--
14 | one-two-three-four-five
15 | one-two-three-four-five
16 | one-two-three,four,five
17 | 1-2-3-4-5
18 | 1-2-3-4-5
19 | 12-34-5
20 | one-two-three
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/dump_array.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "dump" function, xdebug is not loaded or xdebug <2.2-dev is loaded
3 | --CONDITION--
4 | !extension_loaded('xdebug') || (($r = new ReflectionExtension('xdebug')) && version_compare($r->getVersion(), '2.2-dev', '<'))
5 | --TEMPLATE--
6 | {{ dump() }}
7 | --DATA--
8 | return array('foo' => 'foo', 'bar' => 'bar')
9 | --CONFIG--
10 | return array('debug' => true, 'autoescape' => false);
11 | --EXPECT--
12 | array(3) {
13 | ["foo"]=>
14 | string(3) "foo"
15 | ["bar"]=>
16 | string(3) "bar"
17 | ["global"]=>
18 | string(6) "global"
19 | }
20 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/parent_isolation.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "extends" tag
3 | --TEMPLATE--
4 | {% extends "base.twig" %}
5 | {% block content %}{% include "included.twig" %}{% endblock %}
6 |
7 | {% block footer %}Footer{% endblock %}
8 | --TEMPLATE(included.twig)--
9 | {% extends "base.twig" %}
10 | {% block content %}Included Content{% endblock %}
11 | --TEMPLATE(base.twig)--
12 | {% block content %}Default Content{% endblock %}
13 |
14 | {% block footer %}Default Footer{% endblock %}
15 | --DATA--
16 | return array()
17 | --EXPECT--
18 | Included Content
19 | Default Footer
20 | Footer
21 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/FunctionCallableInterface.php:
--------------------------------------------------------------------------------
1 |
18 | * @deprecated since 1.12 (to be removed in 2.0)
19 | */
20 | interface Twig_FunctionCallableInterface
21 | {
22 | public function getCallable();
23 | }
24 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/multiple_dynamic.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "extends" tag
3 | --TEMPLATE--
4 | {% set foo = 1 %}
5 | {{ include('parent.twig') }}
6 | {{ include('parent.twig') }}
7 | {% set foo = 2 %}
8 | {{ include('parent.twig') }}
9 | --TEMPLATE(parent.twig)--
10 | {% extends foo~'_parent.twig' %}{% block content %}{{ parent() }} parent{% endblock %}
11 | --TEMPLATE(1_parent.twig)--
12 | {% block content %}1{% endblock %}
13 | --TEMPLATE(2_parent.twig)--
14 | {% block content %}2{% endblock %}
15 | --DATA--
16 | return array()
17 | --EXPECT--
18 | 1 parent
19 |
20 | 1 parent
21 |
22 | 2 parent
23 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/magic_call.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports __call() for attributes
3 | --TEMPLATE--
4 | {{ foo.foo }}
5 | {{ foo.bar }}
6 | --DATA--
7 | class TestClassForMagicCallAttributes
8 | {
9 | public function getBar()
10 | {
11 | return 'bar_from_getbar';
12 | }
13 |
14 | public function __call($method, $arguments)
15 | {
16 | if ('foo' === $method)
17 | {
18 | return 'foo_from_call';
19 | }
20 |
21 | return false;
22 | }
23 | }
24 | return array('foo' => new TestClassForMagicCallAttributes())
25 | --EXPECT--
26 | foo_from_call
27 | bar_from_getbar
28 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/split_utf8.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "split" filter
3 | --CONDITION--
4 | function_exists('mb_get_info')
5 | --TEMPLATE--
6 | {{ "é"|split('', 10)|join('-') }}
7 | {{ foo|split(',')|join('-') }}
8 | {{ foo|split(',', 1)|join('-') }}
9 | {{ foo|split(',', 2)|join('-') }}
10 | {{ foo|split(',', 3)|join('-') }}
11 | {{ baz|split('')|join('-') }}
12 | {{ baz|split('', 1)|join('-') }}
13 | {{ baz|split('', 2)|join('-') }}
14 | --DATA--
15 | return array('foo' => 'Ä,é,Äほ', 'baz' => 'éÄßごa',)
16 | --EXPECT--
17 | é
18 | Ä-é-Äほ
19 | Ä,é,Äほ
20 | Ä-é,Äほ
21 | Ä-é-Äほ
22 | é-Ä-ß-ご-a
23 | é-Ä-ß-ご-a
24 | éÄ-ßご-a
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/nested.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "autoescape" tags can be nested at will
3 | --TEMPLATE--
4 | {{ var }}
5 | {% autoescape 'html' %}
6 | {{ var }}
7 | {% autoescape false %}
8 | {{ var }}
9 | {% autoescape 'html' %}
10 | {{ var }}
11 | {% endautoescape %}
12 | {{ var }}
13 | {% endautoescape %}
14 | {{ var }}
15 | {% endautoescape %}
16 | {{ var }}
17 | --DATA--
18 | return array('var' => '
')
19 | --EXPECT--
20 | <br />
21 | <br />
22 |
23 | <br />
24 |
25 | <br />
26 | <br />
27 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/functions/source.rst:
--------------------------------------------------------------------------------
1 | ``source``
2 | ==========
3 |
4 | .. versionadded:: 1.15
5 | The ``source`` function was added in Twig 1.15.
6 |
7 | The ``source`` function returns the content of a template without rendering it:
8 |
9 | .. code-block:: jinja
10 |
11 | {{ source('template.html') }}
12 | {{ source(some_var) }}
13 |
14 | The function uses the same template loaders as the ones used to include
15 | templates. So, if you are using the filesystem loader, the templates are looked
16 | for in the paths defined by it.
17 |
18 | Arguments
19 | ---------
20 |
21 | * ``name``: The name of the template to read
22 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/date_interval.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "date" filter (interval support as of PHP 5.3)
3 | --CONDITION--
4 | version_compare(phpversion(), '5.3.0', '>=')
5 | --TEMPLATE--
6 | {{ date1|date }}
7 | {{ date1|date('%d days %h hours') }}
8 | {{ date1|date('%d days %h hours', timezone1) }}
9 | --DATA--
10 | date_default_timezone_set('UTC');
11 | return array(
12 | 'date1' => new DateInterval('P2D'),
13 | // This should have no effect on DateInterval formatting
14 | 'timezone1' => new DateTimeZone('America/New_York'),
15 | )
16 | --EXPECT--
17 | 2 days
18 | 2 days 0 hours
19 | 2 days 0 hours
20 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/functions/attribute.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "attribute" function
3 | --TEMPLATE--
4 | {{ attribute(obj, method) }}
5 | {{ attribute(array, item) }}
6 | {{ attribute(obj, "bar", ["a", "b"]) }}
7 | {{ attribute(obj, "bar", arguments) }}
8 | {{ attribute(obj, method) is defined ? 'ok' : 'ko' }}
9 | {{ attribute(obj, nonmethod) is defined ? 'ok' : 'ko' }}
10 | --DATA--
11 | return array('obj' => new TwigTestFoo(), 'method' => 'foo', 'array' => array('foo' => 'bar'), 'item' => 'foo', 'nonmethod' => 'xxx', 'arguments' => array('a', 'b'))
12 | --EXPECT--
13 | foo
14 | bar
15 | bar_a-b
16 | bar_a-b
17 | ok
18 | ko
19 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/objects.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "autoescape" tag applies escaping to object method calls
3 | --TEMPLATE--
4 | {% autoescape 'html' %}
5 | {{ user.name }}
6 | {{ user.name|lower }}
7 | {{ user }}
8 | {% endautoescape %}
9 | --DATA--
10 | class UserForAutoEscapeTest
11 | {
12 | public function getName()
13 | {
14 | return 'Fabien
';
15 | }
16 |
17 | public function __toString()
18 | {
19 | return 'Fabien
';
20 | }
21 | }
22 | return array('user' => new UserForAutoEscapeTest())
23 | --EXPECT--
24 | Fabien<br />
25 | fabien<br />
26 | Fabien<br />
27 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/macro/external.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "macro" tag
3 | --TEMPLATE--
4 | {% import 'forms.twig' as forms %}
5 |
6 | {{ forms.input('username') }}
7 | {{ forms.input('password', null, 'password', 1) }}
8 | --TEMPLATE(forms.twig)--
9 | {% macro input(name, value, type, size) %}
10 |
11 | {% endmacro %}
12 | --DATA--
13 | return array()
14 | --EXPECT--
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/last.rst:
--------------------------------------------------------------------------------
1 | ``last``
2 | ========
3 |
4 | .. versionadded:: 1.12.2
5 | The ``last`` filter was added in Twig 1.12.2.
6 |
7 | The ``last`` filter returns the last "element" of a sequence, a mapping, or
8 | a string:
9 |
10 | .. code-block:: jinja
11 |
12 | {{ [1, 2, 3, 4]|last }}
13 | {# outputs 4 #}
14 |
15 | {{ { a: 1, b: 2, c: 3, d: 4 }|last }}
16 | {# outputs 4 #}
17 |
18 | {{ '1234'|last }}
19 | {# outputs 4 #}
20 |
21 | .. note::
22 |
23 | It also works with objects implementing the `Traversable`_ interface.
24 |
25 | .. _`Traversable`: http://php.net/manual/en/class.traversable.php
26 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/TestInterface.php:
--------------------------------------------------------------------------------
1 |
16 | * @deprecated since 1.12 (to be removed in 2.0)
17 | */
18 | interface Twig_TestInterface
19 | {
20 | /**
21 | * Compiles a test.
22 | *
23 | * @return string The PHP code for the test
24 | */
25 | public function compile();
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/urlencode.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "url_encode" filter
3 | --CONDITION--
4 | defined('PHP_QUERY_RFC3986')
5 | --TEMPLATE--
6 | {{ {foo: "bar", number: 3, "spéßi%l": "e%c0d@d", "spa ce": ""}|url_encode }}
7 | {{ {foo: "bar", number: 3, "spéßi%l": "e%c0d@d", "spa ce": ""}|url_encode|raw }}
8 | {{ {}|url_encode|default("default") }}
9 | {{ 'spéßi%le%c0d@dspa ce'|url_encode }}
10 | --DATA--
11 | return array()
12 | --EXPECT--
13 | foo=bar&number=3&sp%C3%A9%C3%9Fi%25l=e%25c0d%40d&spa%20ce=
14 | foo=bar&number=3&sp%C3%A9%C3%9Fi%25l=e%25c0d%40d&spa%20ce=
15 | default
16 | sp%C3%A9%C3%9Fi%25le%25c0d%40dspa%20ce
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/issue_1143.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | error in twig extension
3 | --TEMPLATE--
4 | {{ object.region is not null ? object.regionChoices[object.region] }}
5 | --DATA--
6 | class House
7 | {
8 | const REGION_S = 1;
9 | const REGION_P = 2;
10 |
11 | public static $regionChoices = array(self::REGION_S => 'house.region.s', self::REGION_P => 'house.region.p');
12 |
13 | public function getRegionChoices()
14 | {
15 | return self::$regionChoices;
16 | }
17 | }
18 |
19 | $object = new House();
20 | $object->region = 1;
21 | return array('object' => $object)
22 | --EXPECT--
23 | house.region.s
24 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/with_filters_arguments.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "autoescape" tag do not applies escaping on filter arguments
3 | --TEMPLATE--
4 | {% autoescape 'html' %}
5 | {{ var|nl2br("
") }}
6 | {{ var|nl2br("
"|escape) }}
7 | {{ var|nl2br(sep) }}
8 | {{ var|nl2br(sep|raw) }}
9 | {{ var|nl2br(sep|escape) }}
10 | {% endautoescape %}
11 | --DATA--
12 | return array('var' => "\nTwig", 'sep' => '
')
13 | --EXPECT--
14 | <Fabien>
15 | Twig
16 | <Fabien><br />
17 | Twig
18 | <Fabien>
19 | Twig
20 | <Fabien>
21 | Twig
22 | <Fabien><br />
23 | Twig
24 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/first.rst:
--------------------------------------------------------------------------------
1 | ``first``
2 | =========
3 |
4 | .. versionadded:: 1.12.2
5 | The ``first`` filter was added in Twig 1.12.2.
6 |
7 | The ``first`` filter returns the first "element" of a sequence, a mapping, or
8 | a string:
9 |
10 | .. code-block:: jinja
11 |
12 | {{ [1, 2, 3, 4]|first }}
13 | {# outputs 1 #}
14 |
15 | {{ { a: 1, b: 2, c: 3, d: 4 }|first }}
16 | {# outputs 1 #}
17 |
18 | {{ '1234'|first }}
19 | {# outputs 1 #}
20 |
21 | .. note::
22 |
23 | It also works with objects implementing the `Traversable`_ interface.
24 |
25 | .. _`Traversable`: http://php.net/manual/en/class.traversable.php
26 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/method_call.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports method calls
3 | --TEMPLATE--
4 | {{ items.foo.foo }}
5 | {{ items.foo.getFoo() }}
6 | {{ items.foo.bar }}
7 | {{ items.foo['bar'] }}
8 | {{ items.foo.bar('a', 43) }}
9 | {{ items.foo.bar(foo) }}
10 | {{ items.foo.self.foo() }}
11 | {{ items.foo.is }}
12 | {{ items.foo.in }}
13 | {{ items.foo.not }}
14 | --DATA--
15 | return array('foo' => 'bar', 'items' => array('foo' => new TwigTestFoo(), 'bar' => 'foo'))
16 | --CONFIG--
17 | return array('strict_variables' => false)
18 | --EXPECT--
19 | foo
20 | foo
21 | bar
22 |
23 | bar_a-43
24 | bar_bar
25 | foo
26 | is
27 | in
28 | not
29 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/autoescape/basic.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "autoescape" tag applies escaping on its children
3 | --TEMPLATE--
4 | {% autoescape %}
5 | {{ var }}
6 | {% endautoescape %}
7 | {% autoescape 'html' %}
8 | {{ var }}
9 | {% endautoescape %}
10 | {% autoescape false %}
11 | {{ var }}
12 | {% endautoescape %}
13 | {% autoescape true %}
14 | {{ var }}
15 | {% endautoescape %}
16 | {% autoescape false %}
17 | {{ var }}
18 | {% endautoescape %}
19 | --DATA--
20 | return array('var' => '
')
21 | --EXPECT--
22 | <br />
23 | <br />
24 |
25 | <br />
26 |
27 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/trim.rst:
--------------------------------------------------------------------------------
1 | ``trim``
2 | ========
3 |
4 | .. versionadded:: 1.6.2
5 | The ``trim`` filter was added in Twig 1.6.2.
6 |
7 | The ``trim`` filter strips whitespace (or other characters) from the beginning
8 | and end of a string:
9 |
10 | .. code-block:: jinja
11 |
12 | {{ ' I like Twig. '|trim }}
13 |
14 | {# outputs 'I like Twig.' #}
15 |
16 | {{ ' I like Twig.'|trim('.') }}
17 |
18 | {# outputs ' I like Twig' #}
19 |
20 | .. note::
21 |
22 | Internally, Twig uses the PHP `trim`_ function.
23 |
24 | Arguments
25 | ---------
26 |
27 | * ``character_mask``: The characters to strip
28 |
29 | .. _`trim`: http://php.net/trim
30 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/functions/parent.rst:
--------------------------------------------------------------------------------
1 | ``parent``
2 | ==========
3 |
4 | When a template uses inheritance, it's possible to render the contents of the
5 | parent block when overriding a block by using the ``parent`` function:
6 |
7 | .. code-block:: jinja
8 |
9 | {% extends "base.html" %}
10 |
11 | {% block sidebar %}
12 | Table Of Contents
13 | ...
14 | {{ parent() }}
15 | {% endblock %}
16 |
17 | The ``parent()`` call will return the content of the ``sidebar`` block as
18 | defined in the ``base.html`` template.
19 |
20 | .. seealso:: :doc:`extends<../tags/extends>`, :doc:`block<../functions/block>`, :doc:`block<../tags/block>`
21 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/dotdot.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports the .. operator
3 | --TEMPLATE--
4 | {% for i in 0..10 %}{{ i }} {% endfor %}
5 |
6 | {% for letter in 'a'..'z' %}{{ letter }} {% endfor %}
7 |
8 | {% for letter in 'a'|upper..'z'|upper %}{{ letter }} {% endfor %}
9 |
10 | {% for i in foo[0]..foo[1] %}{{ i }} {% endfor %}
11 |
12 | {% for i in 0 + 1 .. 10 - 1 %}{{ i }} {% endfor %}
13 | --DATA--
14 | return array('foo' => array(1, 10))
15 | --EXPECT--
16 | 0 1 2 3 4 5 6 7 8 9 10
17 | a b c d e f g h i j k l m n o p q r s t u v w x y z
18 | A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
19 | 1 2 3 4 5 6 7 8 9 10
20 | 1 2 3 4 5 6 7 8 9
21 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/urlencode_deprecated.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "url_encode" filter for PHP < 5.4 and HHVM
3 | --CONDITION--
4 | defined('PHP_QUERY_RFC3986')
5 | --TEMPLATE--
6 | {{ {foo: "bar", number: 3, "spéßi%l": "e%c0d@d", "spa ce": ""}|url_encode }}
7 | {{ {foo: "bar", number: 3, "spéßi%l": "e%c0d@d", "spa ce": ""}|url_encode|raw }}
8 | {{ {}|url_encode|default("default") }}
9 | {{ 'spéßi%le%c0d@dspa ce'|url_encode }}
10 | --DATA--
11 | return array()
12 | --EXPECT--
13 | foo=bar&number=3&sp%C3%A9%C3%9Fi%25l=e%25c0d%40d&spa%20ce=
14 | foo=bar&number=3&sp%C3%A9%C3%9Fi%25l=e%25c0d%40d&spa%20ce=
15 | default
16 | sp%C3%A9%C3%9Fi%25le%25c0d%40dspa%20ce
17 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/regression/simple_xml_element.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig is able to deal with SimpleXMLElement instances as variables
3 | --CONDITION--
4 | version_compare(phpversion(), '5.3.0', '>=')
5 | --TEMPLATE--
6 | Hello '{{ images.image.0.group }}'!
7 | {{ images.image.0.group.attributes.myattr }}
8 | {{ images.children().image.count() }}
9 | {% for image in images %}
10 | - {{ image.group }}
11 | {% endfor %}
12 | --DATA--
13 | return array('images' => new SimpleXMLElement('foobar'))
14 | --EXPECT--
15 | Hello 'foo'!
16 | example
17 | 2
18 | - foo
19 | - bar
20 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/parent_block2.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "use" tag
3 | --TEMPLATE--
4 | {% use 'file2.html.twig'%}
5 | {% block foobar %}
6 | {{- parent() -}}
7 | Content of block (second override)
8 | {% endblock foobar %}
9 | --TEMPLATE(file2.html.twig)--
10 | {% use 'file1.html.twig' %}
11 | {% block foobar %}
12 | {{- parent() -}}
13 | Content of block (first override)
14 | {% endblock foobar %}
15 | --TEMPLATE(file1.html.twig)--
16 | {% block foobar -%}
17 | Content of block
18 | {% endblock foobar %}
19 | --DATA--
20 | return array()
21 | --EXPECT--
22 | Content of block
23 | Content of block (first override)
24 | Content of block (second override)
25 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Constant.php:
--------------------------------------------------------------------------------
1 | $value), $lineno);
17 | }
18 |
19 | public function compile(Twig_Compiler $compiler)
20 | {
21 | $compiler->repr($this->getAttribute('value'));
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/functions/cycle.rst:
--------------------------------------------------------------------------------
1 | ``cycle``
2 | =========
3 |
4 | The ``cycle`` function cycles on an array of values:
5 |
6 | .. code-block:: jinja
7 |
8 | {% set start_year = date() | date('Y') %}
9 | {% set end_year = start_year + 5 %}
10 |
11 | {% for year in start_year..end_year %}
12 | {{ cycle(['odd', 'even'], loop.index0) }}
13 | {% endfor %}
14 |
15 | The array can contain any number of values:
16 |
17 | .. code-block:: jinja
18 |
19 | {% set fruits = ['apple', 'orange', 'citrus'] %}
20 |
21 | {% for i in 0..10 %}
22 | {{ cycle(fruits, i) }}
23 | {% endfor %}
24 |
25 | Arguments
26 | ---------
27 |
28 | * ``position``: The cycle position
29 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Sandbox/SecurityPolicyInterface.php:
--------------------------------------------------------------------------------
1 |
16 | */
17 | interface Twig_Sandbox_SecurityPolicyInterface
18 | {
19 | public function checkSecurity($tags, $filters, $functions);
20 |
21 | public function checkMethodAllowed($obj, $method);
22 |
23 | public function checkPropertyAllowed($obj, $method);
24 | }
25 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/ends_with.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports the "ends with" operator
3 | --TEMPLATE--
4 | {{ 'foo' ends with 'o' ? 'OK' : 'KO' }}
5 | {{ not ('foo' ends with 'f') ? 'OK' : 'KO' }}
6 | {{ not ('foo' ends with 'foowaytoolong') ? 'OK' : 'KO' }}
7 | {{ 'foo' ends with '' ? 'OK' : 'KO' }}
8 | {{ '1' ends with true ? 'OK' : 'KO' }}
9 | {{ 1 ends with true ? 'OK' : 'KO' }}
10 | {{ 0 ends with false ? 'OK' : 'KO' }}
11 | {{ '' ends with false ? 'OK' : 'KO' }}
12 | {{ false ends with false ? 'OK' : 'KO' }}
13 | {{ false ends with '' ? 'OK' : 'KO' }}
14 | --DATA--
15 | return array()
16 | --EXPECT--
17 | OK
18 | OK
19 | OK
20 | OK
21 | KO
22 | KO
23 | KO
24 | KO
25 | KO
26 | KO
27 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tags/verbatim.rst:
--------------------------------------------------------------------------------
1 | ``verbatim``
2 | ============
3 |
4 | .. versionadded:: 1.12
5 | The ``verbatim`` tag was added in Twig 1.12 (it was named ``raw`` before).
6 |
7 | The ``verbatim`` tag marks sections as being raw text that should not be
8 | parsed. For example to put Twig syntax as example into a template you can use
9 | this snippet:
10 |
11 | .. code-block:: jinja
12 |
13 | {% verbatim %}
14 |
15 | {% for item in seq %}
16 | - {{ item }}
17 | {% endfor %}
18 |
19 | {% endverbatim %}
20 |
21 | .. note::
22 |
23 | The ``verbatim`` tag works in the exact same way as the old ``raw`` tag,
24 | but was renamed to avoid confusion with the ``raw`` filter.
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/AutoloaderTest.php:
--------------------------------------------------------------------------------
1 | assertFalse(class_exists('FooBarFoo'), '->autoload() does not try to load classes that does not begin with Twig');
17 |
18 | $autoloader = new Twig_Autoloader();
19 | $this->assertNull($autoloader->autoload('Foo'), '->autoload() returns false if it is not able to load a class');
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tests/constant.rst:
--------------------------------------------------------------------------------
1 | ``constant``
2 | ============
3 |
4 | .. versionadded: 1.13.1
5 | constant now accepts object instances as the second argument.
6 |
7 | ``constant`` checks if a variable has the exact same value as a constant. You
8 | can use either global constants or class constants:
9 |
10 | .. code-block:: jinja
11 |
12 | {% if post.status is constant('Post::PUBLISHED') %}
13 | the status attribute is exactly the same as Post::PUBLISHED
14 | {% endif %}
15 |
16 | You can test constants from object instances as well:
17 |
18 | .. code-block:: jinja
19 |
20 | {% if post.status is constant('PUBLISHED', post) %}
21 | the status attribute is exactly the same as Post::PUBLISHED
22 | {% endif %}
23 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/TempName.php:
--------------------------------------------------------------------------------
1 | $name), $lineno);
16 | }
17 |
18 | public function compile(Twig_Compiler $compiler)
19 | {
20 | $compiler
21 | ->raw('$_')
22 | ->raw($this->getAttribute('name'))
23 | ->raw('_')
24 | ;
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/starts_with.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports the "starts with" operator
3 | --TEMPLATE--
4 | {{ 'foo' starts with 'f' ? 'OK' : 'KO' }}
5 | {{ not ('foo' starts with 'oo') ? 'OK' : 'KO' }}
6 | {{ not ('foo' starts with 'foowaytoolong') ? 'OK' : 'KO' }}
7 | {{ 'foo' starts with 'f' ? 'OK' : 'KO' }}
8 | {{ 'foo' starts
9 | with 'f' ? 'OK' : 'KO' }}
10 | {{ 'foo' starts with '' ? 'OK' : 'KO' }}
11 | {{ '1' starts with true ? 'OK' : 'KO' }}
12 | {{ '' starts with false ? 'OK' : 'KO' }}
13 | {{ 'a' starts with false ? 'OK' : 'KO' }}
14 | {{ false starts with '' ? 'OK' : 'KO' }}
15 | --DATA--
16 | return array()
17 | --EXPECT--
18 | OK
19 | OK
20 | OK
21 | OK
22 | OK
23 | OK
24 | KO
25 | KO
26 | KO
27 | KO
28 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/date_modify.rst:
--------------------------------------------------------------------------------
1 | ``date_modify``
2 | ===============
3 |
4 | .. versionadded:: 1.9.0
5 | The date_modify filter has been added in Twig 1.9.0.
6 |
7 | The ``date_modify`` filter modifies a date with a given modifier string:
8 |
9 | .. code-block:: jinja
10 |
11 | {{ post.published_at|date_modify("+1 day")|date("m/d/Y") }}
12 |
13 | The ``date_modify`` filter accepts strings (it must be in a format supported
14 | by the `strtotime`_ function) or `DateTime`_ instances. You can easily combine
15 | it with the :doc:`date` filter for formatting.
16 |
17 | Arguments
18 | ---------
19 |
20 | * ``modifier``: The modifier
21 |
22 | .. _`strtotime`: http://www.php.net/strtotime
23 | .. _`DateTime`: http://www.php.net/DateTime
24 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/binary.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig supports binary operations (+, -, *, /, ~, %, and, or)
3 | --TEMPLATE--
4 | {{ 1 + 1 }}
5 | {{ 2 - 1 }}
6 | {{ 2 * 2 }}
7 | {{ 2 / 2 }}
8 | {{ 3 % 2 }}
9 | {{ 1 and 1 }}
10 | {{ 1 and 0 }}
11 | {{ 0 and 1 }}
12 | {{ 0 and 0 }}
13 | {{ 1 or 1 }}
14 | {{ 1 or 0 }}
15 | {{ 0 or 1 }}
16 | {{ 0 or 0 }}
17 | {{ 0 or 1 and 0 }}
18 | {{ 1 or 0 and 1 }}
19 | {{ "foo" ~ "bar" }}
20 | {{ foo ~ "bar" }}
21 | {{ "foo" ~ bar }}
22 | {{ foo ~ bar }}
23 | {{ 20 // 7 }}
24 | --DATA--
25 | return array('foo' => 'bar', 'bar' => 'foo')
26 | --EXPECT--
27 | 2
28 | 1
29 | 4
30 | 1
31 | 1
32 | 1
33 |
34 |
35 |
36 | 1
37 | 1
38 | 1
39 |
40 |
41 | 1
42 | foobar
43 | barbar
44 | foofoo
45 | barfoo
46 | 2
47 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/inheritance2.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "use" tag
3 | --TEMPLATE--
4 | {% use "ancestor.twig" %}
5 | {% use "parent.twig" %}
6 |
7 | {{ block('container') }}
8 | --TEMPLATE(parent.twig)--
9 | {% block sub_container %}
10 | overriden sub_container
11 | {% endblock %}
12 | --TEMPLATE(ancestor.twig)--
13 | {% block container %}
14 | {{ block('sub_container') }}
15 | {% endblock %}
16 |
17 | {% block sub_container %}
18 | sub_container
19 | {% endblock %}
20 | --DATA--
21 | return array()
22 | --EXPECT--
23 | overriden sub_container
24 |
25 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/inheritance.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "use" tag
3 | --TEMPLATE--
4 | {% use "parent.twig" %}
5 |
6 | {{ block('container') }}
7 | --TEMPLATE(parent.twig)--
8 | {% use "ancestor.twig" %}
9 |
10 | {% block sub_container %}
11 | overriden sub_container
12 | {% endblock %}
13 | --TEMPLATE(ancestor.twig)--
14 | {% block container %}
15 | {{ block('sub_container') }}
16 | {% endblock %}
17 |
18 | {% block sub_container %}
19 | sub_container
20 | {% endblock %}
21 | --DATA--
22 | return array()
23 | --EXPECT--
24 | overriden sub_container
25 |
26 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/expressions/unary_macro_arguments.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Twig manages negative numbers as default parameters
3 | --TEMPLATE--
4 | {% import _self as macros %}
5 | {{ macros.negative_number1() }}
6 | {{ macros.negative_number2() }}
7 | {{ macros.negative_number3() }}
8 | {{ macros.positive_number1() }}
9 | {{ macros.positive_number2() }}
10 | {% macro negative_number1(nb=-1) %}{{ nb }}{% endmacro %}
11 | {% macro negative_number2(nb = --1) %}{{ nb }}{% endmacro %}
12 | {% macro negative_number3(nb = - 1) %}{{ nb }}{% endmacro %}
13 | {% macro positive_number1(nb = +1) %}{{ nb }}{% endmacro %}
14 | {% macro positive_number2(nb = ++1) %}{{ nb }}{% endmacro %}
15 | --DATA--
16 | return array()
17 | --EXPECT--
18 | -1
19 | 1
20 | -1
21 | 1
22 | 1
23 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Node/TextTest.php:
--------------------------------------------------------------------------------
1 | assertEquals('foo', $node->getAttribute('data'));
19 | }
20 |
21 | public function getTests()
22 | {
23 | $tests = array();
24 | $tests[] = array(new Twig_Node_Text('foo', 1), "// line 1\necho \"foo\";");
25 |
26 | return $tests;
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/raw/whitespace_control.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "raw" tag
3 | --TEMPLATE--
4 | 1***
5 |
6 | {%- raw %}
7 | {{ 'bla' }}
8 | {% endraw %}
9 |
10 | 1***
11 | 2***
12 |
13 | {%- raw -%}
14 | {{ 'bla' }}
15 | {% endraw %}
16 |
17 | 2***
18 | 3***
19 |
20 | {%- raw -%}
21 | {{ 'bla' }}
22 | {% endraw -%}
23 |
24 | 3***
25 | 4***
26 |
27 | {%- raw -%}
28 | {{ 'bla' }}
29 | {%- endraw %}
30 |
31 | 4***
32 | 5***
33 |
34 | {%- raw -%}
35 | {{ 'bla' }}
36 | {%- endraw -%}
37 |
38 | 5***
39 | --DATA--
40 | return array()
41 | --EXPECT--
42 | 1***
43 | {{ 'bla' }}
44 |
45 |
46 | 1***
47 | 2***{{ 'bla' }}
48 |
49 |
50 | 2***
51 | 3***{{ 'bla' }}
52 | 3***
53 | 4***{{ 'bla' }}
54 |
55 | 4***
56 | 5***{{ 'bla' }}5***
57 |
--------------------------------------------------------------------------------
/vendor/twig/twig/phpunit.xml.dist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
14 |
15 |
16 | ./test/Twig/
17 |
18 |
19 |
20 |
21 |
22 | ./lib/Twig/
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/use/parent_block.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "use" tag
3 | --TEMPLATE--
4 | {% use 'file2.html.twig' with foobar as base_base_foobar %}
5 | {% block foobar %}
6 | {{- block('base_base_foobar') -}}
7 | Content of block (second override)
8 | {% endblock foobar %}
9 | --TEMPLATE(file2.html.twig)--
10 | {% use 'file1.html.twig' with foobar as base_foobar %}
11 | {% block foobar %}
12 | {{- block('base_foobar') -}}
13 | Content of block (first override)
14 | {% endblock foobar %}
15 | --TEMPLATE(file1.html.twig)--
16 | {% block foobar -%}
17 | Content of block
18 | {% endblock foobar %}
19 | --DATA--
20 | return array()
21 | --EXPECT--
22 | Content of block
23 | Content of block (first override)
24 | Content of block (second override)
25 |
--------------------------------------------------------------------------------
/vendor/twig/twig/.travis.yml:
--------------------------------------------------------------------------------
1 | language: php
2 |
3 | php:
4 | - 5.2
5 | - 5.3
6 | - 5.4
7 | - 5.5
8 | - 5.6
9 | - hhvm
10 | - nightly
11 | - hhvm-nightly
12 |
13 | allow_failures:
14 | - php: nightly
15 | - php: hhvm-nightly
16 |
17 | env:
18 | - TWIG_EXT=no
19 | - TWIG_EXT=yes
20 |
21 | before_script:
22 | - if [ "$TWIG_EXT" == "yes" ]; then sh -c "cd ext/twig && phpize && ./configure --enable-twig && make && sudo make install"; fi
23 | - if [ "$TWIG_EXT" == "yes" ]; then echo "extension=twig.so" >> `php --ini | grep "Loaded Configuration" | sed -e "s|.*:\s*||"`; fi
24 |
25 | matrix:
26 | exclude:
27 | - php: hhvm
28 | env: TWIG_EXT=yes
29 | - php: hhvm-nightly
30 | env: TWIG_EXT=yes
31 | - php: nightly
32 | env: TWIG_EXT=yes
33 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/AssignName.php:
--------------------------------------------------------------------------------
1 | raw('$context[')
24 | ->string($this->getAttribute('name'))
25 | ->raw(']')
26 | ;
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Test/Null.php:
--------------------------------------------------------------------------------
1 |
16 | * {{ var is none }}
17 | *
18 | *
19 | * @author Fabien Potencier
20 | */
21 | class Twig_Node_Expression_Test_Null extends Twig_Node_Expression_Test
22 | {
23 | public function compile(Twig_Compiler $compiler)
24 | {
25 | $compiler
26 | ->raw('(null === ')
27 | ->subcompile($this->getNode('node'))
28 | ->raw(')')
29 | ;
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_empty_fill.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "batch" filter
3 | --TEMPLATE--
4 |
5 | {% for row in items|batch(3, '') %}
6 |
7 | {% for column in row %}
8 | | {{ column }} |
9 | {% endfor %}
10 |
11 | {% endfor %}
12 |
13 | --DATA--
14 | return array('items' => array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'))
15 | --EXPECT--
16 |
17 |
18 | | a |
19 | b |
20 | c |
21 |
22 |
23 | | d |
24 | e |
25 | f |
26 |
27 |
28 | | g |
29 | h |
30 | i |
31 |
32 |
33 | | j |
34 | |
35 | |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_with_fill.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "batch" filter
3 | --TEMPLATE--
4 |
5 | {% for row in items|batch(3, 'fill') %}
6 |
7 | {% for column in row %}
8 | | {{ column }} |
9 | {% endfor %}
10 |
11 | {% endfor %}
12 |
13 | --DATA--
14 | return array('items' => array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'))
15 | --EXPECT--
16 |
17 |
18 | | a |
19 | b |
20 | c |
21 |
22 |
23 | | d |
24 | e |
25 | f |
26 |
27 |
28 | | g |
29 | h |
30 | i |
31 |
32 |
33 | | j |
34 | fill |
35 | fill |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Test/Odd.php:
--------------------------------------------------------------------------------
1 |
16 | * {{ var is odd }}
17 | *
18 | *
19 | * @author Fabien Potencier
20 | */
21 | class Twig_Node_Expression_Test_Odd extends Twig_Node_Expression_Test
22 | {
23 | public function compile(Twig_Compiler $compiler)
24 | {
25 | $compiler
26 | ->raw('(')
27 | ->subcompile($this->getNode('node'))
28 | ->raw(' % 2 == 1')
29 | ->raw(')')
30 | ;
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Test/Even.php:
--------------------------------------------------------------------------------
1 |
16 | * {{ var is even }}
17 | *
18 | *
19 | * @author Fabien Potencier
20 | */
21 | class Twig_Node_Expression_Test_Even extends Twig_Node_Expression_Test
22 | {
23 | public function compile(Twig_Compiler $compiler)
24 | {
25 | $compiler
26 | ->raw('(')
27 | ->subcompile($this->getNode('node'))
28 | ->raw(' % 2 == 0')
29 | ->raw(')')
30 | ;
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/core/functions.php:
--------------------------------------------------------------------------------
1 | ".var_dump(strpos($subdir, 'empty') == false)."";
13 | }
14 |
15 | return $names;
16 | }
17 |
18 | function addPages(){
19 | $dir = 'app';
20 | $pages = getPagesNames();
21 |
22 | foreach ($pages as $page) {
23 | include($dir . '/' . $page . '/' . $page . '.php');
24 | }
25 | }
26 |
27 | function numPages(){
28 | $dir = 'app';
29 | $pages = getPagesNames();
30 |
31 | #TODO: validaciones
32 |
33 | return count($pages);
34 | }
35 |
36 | ?>
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/functions/attribute.rst:
--------------------------------------------------------------------------------
1 | ``attribute``
2 | =============
3 |
4 | .. versionadded:: 1.2
5 | The ``attribute`` function was added in Twig 1.2.
6 |
7 | The ``attribute`` function can be used to access a "dynamic" attribute of a
8 | variable:
9 |
10 | .. code-block:: jinja
11 |
12 | {{ attribute(object, method) }}
13 | {{ attribute(object, method, arguments) }}
14 | {{ attribute(array, item) }}
15 |
16 | In addition, the ``defined`` test can check for the existence of a dynamic
17 | attribute:
18 |
19 | .. code-block:: jinja
20 |
21 | {{ attribute(object, method) is defined ? 'Method exists' : 'Method does not exist' }}
22 |
23 | .. note::
24 |
25 | The resolution algorithm is the same as the one used for the ``.``
26 | notation, except that the item can be any valid expression.
27 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/block_expr.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | block_expr
3 | --TEMPLATE--
4 | {% extends "base.twig" %}
5 |
6 | {% block element -%}
7 | Element:
8 | {{- parent() -}}
9 | {% endblock %}
10 | --TEMPLATE(base.twig)--
11 | {% spaceless %}
12 | {% block element -%}
13 |
14 | {%- if item.children is defined %}
15 | {%- for item in item.children %}
16 | {{- block('element') -}}
17 | {% endfor %}
18 | {%- endif -%}
19 |
20 | {%- endblock %}
21 | {% endspaceless %}
22 | --DATA--
23 | return array(
24 | 'item' => array(
25 | 'children' => array(
26 | null,
27 | null,
28 | )
29 | )
30 | )
31 | --EXPECT--
32 | Element:
33 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/Matches.php:
--------------------------------------------------------------------------------
1 | raw('preg_match(')
17 | ->subcompile($this->getNode('right'))
18 | ->raw(', ')
19 | ->subcompile($this->getNode('left'))
20 | ->raw(')')
21 | ;
22 | }
23 |
24 | public function operator(Twig_Compiler $compiler)
25 | {
26 | return $compiler->raw('');
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/NodeInterface.php:
--------------------------------------------------------------------------------
1 |
16 | *
17 | * @deprecated since 1.12 (to be removed in 3.0)
18 | */
19 | interface Twig_NodeInterface extends Countable, IteratorAggregate
20 | {
21 | /**
22 | * Compiles the node to PHP.
23 | *
24 | * @param Twig_Compiler $compiler A Twig_Compiler instance
25 | */
26 | public function compile(Twig_Compiler $compiler);
27 |
28 | public function getLine();
29 |
30 | public function getNodeTag();
31 | }
32 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/nested.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "embed" tag
3 | --TEMPLATE--
4 | {% embed "foo.twig" %}
5 | {% block c1 %}
6 | {{ parent() }}
7 | {% embed "foo.twig" %}
8 | {% block c1 %}
9 | {{ parent() }}
10 | block1extended
11 | {% endblock %}
12 | {% endembed %}
13 |
14 | {% endblock %}
15 | {% endembed %}
16 | --TEMPLATE(foo.twig)--
17 | A
18 | {% block c1 %}
19 | block1
20 | {% endblock %}
21 | B
22 | {% block c2 %}
23 | block2
24 | {% endblock %}
25 | C
26 | --DATA--
27 | return array()
28 | --EXPECT--
29 | A
30 | block1
31 |
32 |
33 | A
34 | block1
35 |
36 | block1extended
37 | B
38 | block2
39 | C
40 | B
41 | block2
42 | C
43 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Node/Expression/AssignNameTest.php:
--------------------------------------------------------------------------------
1 | assertEquals('foo', $node->getAttribute('name'));
19 | }
20 |
21 | public function getTests()
22 | {
23 | $node = new Twig_Node_Expression_AssignName('foo', 1);
24 |
25 | return array(
26 | array($node, '$context["foo"]'),
27 | );
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/verbatim/whitespace_control.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "verbatim" tag
3 | --TEMPLATE--
4 | 1***
5 |
6 | {%- verbatim %}
7 | {{ 'bla' }}
8 | {% endverbatim %}
9 |
10 | 1***
11 | 2***
12 |
13 | {%- verbatim -%}
14 | {{ 'bla' }}
15 | {% endverbatim %}
16 |
17 | 2***
18 | 3***
19 |
20 | {%- verbatim -%}
21 | {{ 'bla' }}
22 | {% endverbatim -%}
23 |
24 | 3***
25 | 4***
26 |
27 | {%- verbatim -%}
28 | {{ 'bla' }}
29 | {%- endverbatim %}
30 |
31 | 4***
32 | 5***
33 |
34 | {%- verbatim -%}
35 | {{ 'bla' }}
36 | {%- endverbatim -%}
37 |
38 | 5***
39 | --DATA--
40 | return array()
41 | --EXPECT--
42 | 1***
43 | {{ 'bla' }}
44 |
45 |
46 | 1***
47 | 2***{{ 'bla' }}
48 |
49 |
50 | 2***
51 | 3***{{ 'bla' }}
52 | 3***
53 | 4***{{ 'bla' }}
54 |
55 | 4***
56 | 5***{{ 'bla' }}5***
57 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/TokenParser.php:
--------------------------------------------------------------------------------
1 |
16 | */
17 | abstract class Twig_TokenParser implements Twig_TokenParserInterface
18 | {
19 | /**
20 | * @var Twig_Parser
21 | */
22 | protected $parser;
23 |
24 | /**
25 | * Sets the parser associated with this token parser
26 | *
27 | * @param $parser A Twig_Parser instance
28 | */
29 | public function setParser(Twig_Parser $parser)
30 | {
31 | $this->parser = $parser;
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Node/Expression/ConstantTest.php:
--------------------------------------------------------------------------------
1 | assertEquals('foo', $node->getAttribute('value'));
19 | }
20 |
21 | public function getTests()
22 | {
23 | $tests = array();
24 |
25 | $node = new Twig_Node_Expression_Constant('foo', 1);
26 | $tests[] = array($node, '"foo"');
27 |
28 | return $tests;
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Node/Expression/ParentTest.php:
--------------------------------------------------------------------------------
1 | assertEquals('foo', $node->getAttribute('name'));
19 | }
20 |
21 | public function getTests()
22 | {
23 | $tests = array();
24 | $tests[] = array(new Twig_Node_Expression_Parent('foo', 1), '$this->renderParentBlock("foo", $context, $blocks)');
25 |
26 | return $tests;
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Profiler/Dumper/TextTest.php:
--------------------------------------------------------------------------------
1 | assertStringMatchesFormat(<<dump($this->getProfile()));
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tests/defined.rst:
--------------------------------------------------------------------------------
1 | ``defined``
2 | ===========
3 |
4 | ``defined`` checks if a variable is defined in the current context. This is very
5 | useful if you use the ``strict_variables`` option:
6 |
7 | .. code-block:: jinja
8 |
9 | {# defined works with variable names #}
10 | {% if foo is defined %}
11 | ...
12 | {% endif %}
13 |
14 | {# and attributes on variables names #}
15 | {% if foo.bar is defined %}
16 | ...
17 | {% endif %}
18 |
19 | {% if foo['bar'] is defined %}
20 | ...
21 | {% endif %}
22 |
23 | When using the ``defined`` test on an expression that uses variables in some
24 | method calls, be sure that they are all defined first:
25 |
26 | .. code-block:: jinja
27 |
28 | {% if var is defined and foo.method(var) is defined %}
29 | ...
30 | {% endif %}
31 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Node/BlockReferenceTest.php:
--------------------------------------------------------------------------------
1 | assertEquals('foo', $node->getAttribute('name'));
19 | }
20 |
21 | public function getTests()
22 | {
23 | return array(
24 | array(new Twig_Node_BlockReference('foo', 1), <<displayBlock('foo', \$context, \$blocks);
27 | EOF
28 | ),
29 | );
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/ExistsLoaderInterface.php:
--------------------------------------------------------------------------------
1 |
16 | *
17 | * @deprecated since 1.12 (to be removed in 3.0)
18 | */
19 | interface Twig_ExistsLoaderInterface
20 | {
21 | /**
22 | * Check if we have the source code of a template, given its name.
23 | *
24 | * @param string $name The name of the template to check if we can load
25 | *
26 | * @return bool If the template source code is handled by this loader or not
27 | */
28 | public function exists($name);
29 | }
30 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Extension/Optimizer.php:
--------------------------------------------------------------------------------
1 | optimizers = $optimizers;
18 | }
19 |
20 | /**
21 | * {@inheritdoc}
22 | */
23 | public function getNodeVisitors()
24 | {
25 | return array(new Twig_NodeVisitor_Optimizer($this->optimizers));
26 | }
27 |
28 | /**
29 | * {@inheritdoc}
30 | */
31 | public function getName()
32 | {
33 | return 'optimizer';
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Binary/FloorDiv.php:
--------------------------------------------------------------------------------
1 | raw('intval(floor(');
21 | parent::compile($compiler);
22 | $compiler->raw('))');
23 | }
24 |
25 | public function operator(Twig_Compiler $compiler)
26 | {
27 | return $compiler->raw('/');
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Test/Sameas.php:
--------------------------------------------------------------------------------
1 |
16 | */
17 | class Twig_Node_Expression_Test_Sameas extends Twig_Node_Expression_Test
18 | {
19 | public function compile(Twig_Compiler $compiler)
20 | {
21 | $compiler
22 | ->raw('(')
23 | ->subcompile($this->getNode('node'))
24 | ->raw(' === ')
25 | ->subcompile($this->getNode('arguments')->getNode(0))
26 | ->raw(')')
27 | ;
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch_float.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "batch" filter
3 | --TEMPLATE--
4 | {% for row in items|batch(3.1) %}
5 |
6 | {% for column in row %}
7 |
{{ column }}
8 | {% endfor %}
9 |
10 | {% endfor %}
11 | --DATA--
12 | return array('items' => array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'))
13 | --EXPECT--
14 |
15 |
a
16 |
b
17 |
c
18 |
d
19 |
20 |
21 |
e
22 |
f
23 |
g
24 |
h
25 |
26 |
30 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/embed/multiple.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "embed" tag
3 | --TEMPLATE--
4 | FOO
5 | {% embed "foo.twig" %}
6 | {% block c1 %}
7 | {{ parent() }}
8 | block1extended
9 | {% endblock %}
10 | {% endembed %}
11 |
12 | {% embed "foo.twig" %}
13 | {% block c1 %}
14 | {{ parent() }}
15 | block1extended
16 | {% endblock %}
17 | {% endembed %}
18 |
19 | BAR
20 | --TEMPLATE(foo.twig)--
21 | A
22 | {% block c1 %}
23 | block1
24 | {% endblock %}
25 | B
26 | {% block c2 %}
27 | block2
28 | {% endblock %}
29 | C
30 | --DATA--
31 | return array()
32 | --EXPECT--
33 | FOO
34 |
35 | A
36 | block1
37 |
38 | block1extended
39 | B
40 | block2
41 | C
42 |
43 | A
44 | block1
45 |
46 | block1extended
47 | B
48 | block2
49 | C
50 | BAR
51 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Unary.php:
--------------------------------------------------------------------------------
1 | $node), array(), $lineno);
17 | }
18 |
19 | public function compile(Twig_Compiler $compiler)
20 | {
21 | $compiler->raw(' ');
22 | $this->operator($compiler);
23 | $compiler->subcompile($this->getNode('node'));
24 | }
25 |
26 | abstract public function operator(Twig_Compiler $compiler);
27 | }
28 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Node/PrintTest.php:
--------------------------------------------------------------------------------
1 | assertEquals($expr, $node->getNode('expr'));
20 | }
21 |
22 | public function getTests()
23 | {
24 | $tests = array();
25 | $tests[] = array(new Twig_Node_Print(new Twig_Node_Expression_Constant('foo', 1), 1), "// line 1\necho \"foo\";");
26 |
27 | return $tests;
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Test/Node.php:
--------------------------------------------------------------------------------
1 |
16 | * @deprecated since 1.12 (to be removed in 2.0)
17 | */
18 | class Twig_Test_Node extends Twig_Test
19 | {
20 | protected $class;
21 |
22 | public function __construct($class, array $options = array())
23 | {
24 | parent::__construct($options);
25 |
26 | $this->class = $class;
27 | }
28 |
29 | public function getClass()
30 | {
31 | return $this->class;
32 | }
33 |
34 | public function compile()
35 | {
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/tags/inheritance/block_expr2.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | block_expr2
3 | --TEMPLATE--
4 | {% extends "base2.twig" %}
5 |
6 | {% block element -%}
7 | Element:
8 | {{- parent() -}}
9 | {% endblock %}
10 | --TEMPLATE(base2.twig)--
11 | {% extends "base.twig" %}
12 | --TEMPLATE(base.twig)--
13 | {% spaceless %}
14 | {% block element -%}
15 |
16 | {%- if item.children is defined %}
17 | {%- for item in item.children %}
18 | {{- block('element') -}}
19 | {% endfor %}
20 | {%- endif -%}
21 |
22 | {%- endblock %}
23 | {% endspaceless %}
24 | --DATA--
25 | return array(
26 | 'item' => array(
27 | 'children' => array(
28 | null,
29 | null,
30 | )
31 | )
32 | )
33 | --EXPECT--
34 | Element:
35 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Fixtures/filters/batch.test:
--------------------------------------------------------------------------------
1 | --TEST--
2 | "batch" filter
3 | --TEMPLATE--
4 | {% for row in items|batch(3) %}
5 |
6 | {% for column in row %}
7 |
{{ column }}
8 | {% endfor %}
9 |
10 | {% endfor %}
11 | --DATA--
12 | return array('items' => array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'))
13 | --EXPECT--
14 |
15 |
a
16 |
b
17 |
c
18 |
19 |
20 |
d
21 |
e
22 |
f
23 |
24 |
25 |
g
26 |
h
27 |
i
28 |
29 |
32 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Test/Function.php:
--------------------------------------------------------------------------------
1 |
16 | * @deprecated since 1.12 (to be removed in 2.0)
17 | */
18 | class Twig_Test_Function extends Twig_Test
19 | {
20 | protected $function;
21 |
22 | public function __construct($function, array $options = array())
23 | {
24 | $options['callable'] = $function;
25 |
26 | parent::__construct($options);
27 |
28 | $this->function = $function;
29 | }
30 |
31 | public function compile()
32 | {
33 | return $this->function;
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/ParserInterface.php:
--------------------------------------------------------------------------------
1 |
16 | *
17 | * @deprecated since 1.12 (to be removed in 3.0)
18 | */
19 | interface Twig_ParserInterface
20 | {
21 | /**
22 | * Converts a token stream to a node tree.
23 | *
24 | * @param Twig_TokenStream $stream A token stream instance
25 | *
26 | * @return Twig_Node_Module A node tree
27 | *
28 | * @throws Twig_Error_Syntax When the token stream is syntactically or semantically wrong
29 | */
30 | public function parse(Twig_TokenStream $stream);
31 | }
32 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Node/DoTest.php:
--------------------------------------------------------------------------------
1 | assertEquals($expr, $node->getNode('expr'));
20 | }
21 |
22 | public function getTests()
23 | {
24 | $tests = array();
25 |
26 | $expr = new Twig_Node_Expression_Constant('foo', 1);
27 | $node = new Twig_Node_Do($expr, 1);
28 | $tests[] = array($node, "// line 1\n\"foo\";");
29 |
30 | return $tests;
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/filters/convert_encoding.rst:
--------------------------------------------------------------------------------
1 | ``convert_encoding``
2 | ====================
3 |
4 | .. versionadded:: 1.4
5 | The ``convert_encoding`` filter was added in Twig 1.4.
6 |
7 | The ``convert_encoding`` filter converts a string from one encoding to
8 | another. The first argument is the expected output charset and the second one
9 | is the input charset:
10 |
11 | .. code-block:: jinja
12 |
13 | {{ data|convert_encoding('UTF-8', 'iso-2022-jp') }}
14 |
15 | .. note::
16 |
17 | This filter relies on the `iconv`_ or `mbstring`_ extension, so one of
18 | them must be installed. In case both are installed, `mbstring`_ is used by
19 | default (Twig before 1.8.1 uses `iconv`_ by default).
20 |
21 | Arguments
22 | ---------
23 |
24 | * ``to``: The output charset
25 | * ``from``: The input charset
26 |
27 | .. _`iconv`: http://php.net/iconv
28 | .. _`mbstring`: http://php.net/mbstring
29 |
--------------------------------------------------------------------------------
/vendor/twig/twig/doc/tags/sandbox.rst:
--------------------------------------------------------------------------------
1 | ``sandbox``
2 | ===========
3 |
4 | The ``sandbox`` tag can be used to enable the sandboxing mode for an included
5 | template, when sandboxing is not enabled globally for the Twig environment:
6 |
7 | .. code-block:: jinja
8 |
9 | {% sandbox %}
10 | {% include 'user.html' %}
11 | {% endsandbox %}
12 |
13 | .. warning::
14 |
15 | The ``sandbox`` tag is only available when the sandbox extension is
16 | enabled (see the :doc:`Twig for Developers<../api>` chapter).
17 |
18 | .. note::
19 |
20 | The ``sandbox`` tag can only be used to sandbox an include tag and it
21 | cannot be used to sandbox a section of a template. The following example
22 | won't work:
23 |
24 | .. code-block:: jinja
25 |
26 | {% sandbox %}
27 | {% for i in 1..2 %}
28 | {{ i }}
29 | {% endfor %}
30 | {% endsandbox %}
31 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Test.php:
--------------------------------------------------------------------------------
1 |
16 | * @deprecated since 1.12 (to be removed in 2.0)
17 | */
18 | abstract class Twig_Test implements Twig_TestInterface, Twig_TestCallableInterface
19 | {
20 | protected $options;
21 | protected $arguments = array();
22 |
23 | public function __construct(array $options = array())
24 | {
25 | $this->options = array_merge(array(
26 | 'callable' => null,
27 | ), $options);
28 | }
29 |
30 | public function getCallable()
31 | {
32 | return $this->options['callable'];
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Flush.php:
--------------------------------------------------------------------------------
1 |
16 | */
17 | class Twig_Node_Flush extends Twig_Node
18 | {
19 | public function __construct($lineno, $tag)
20 | {
21 | parent::__construct(array(), array(), $lineno, $tag);
22 | }
23 |
24 | /**
25 | * Compiles the node to PHP.
26 | *
27 | * @param Twig_Compiler $compiler A Twig_Compiler instance
28 | */
29 | public function compile(Twig_Compiler $compiler)
30 | {
31 | $compiler
32 | ->addDebugInfo($this)
33 | ->write("flush();\n")
34 | ;
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Filter/Node.php:
--------------------------------------------------------------------------------
1 |
18 | * @deprecated since 1.12 (to be removed in 2.0)
19 | */
20 | class Twig_Filter_Node extends Twig_Filter
21 | {
22 | protected $class;
23 |
24 | public function __construct($class, array $options = array())
25 | {
26 | parent::__construct($options);
27 |
28 | $this->class = $class;
29 | }
30 |
31 | public function getClass()
32 | {
33 | return $this->class;
34 | }
35 |
36 | public function compile()
37 | {
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Sandbox/SecurityNotAllowedTagError.php:
--------------------------------------------------------------------------------
1 |
16 | */
17 | class Twig_Sandbox_SecurityNotAllowedTagError extends Twig_Sandbox_SecurityError
18 | {
19 | private $tagName;
20 |
21 | public function __construct($message, $tagName, $lineno = -1, $filename = null, Exception $previous = null)
22 | {
23 | parent::__construct($message, $lineno, $filename, $previous);
24 | $this->tagName = $tagName;
25 | }
26 |
27 | public function getTagName()
28 | {
29 | return $this->tagName;
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Node/Expression/Unary/NotTest.php:
--------------------------------------------------------------------------------
1 | assertEquals($expr, $node->getNode('node'));
20 | }
21 |
22 | public function getTests()
23 | {
24 | $node = new Twig_Node_Expression_Constant(1, 1);
25 | $node = new Twig_Node_Expression_Unary_Not($node, 1);
26 |
27 | return array(
28 | array($node, '!1'),
29 | );
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/vendor/twig/twig/test/Twig/Tests/Node/Expression/Unary/PosTest.php:
--------------------------------------------------------------------------------
1 | assertEquals($expr, $node->getNode('node'));
20 | }
21 |
22 | public function getTests()
23 | {
24 | $node = new Twig_Node_Expression_Constant(1, 1);
25 | $node = new Twig_Node_Expression_Unary_Pos($node, 1);
26 |
27 | return array(
28 | array($node, '+1'),
29 | );
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/LexerInterface.php:
--------------------------------------------------------------------------------
1 |
16 | *
17 | * @deprecated since 1.12 (to be removed in 3.0)
18 | */
19 | interface Twig_LexerInterface
20 | {
21 | /**
22 | * Tokenizes a source code.
23 | *
24 | * @param string $code The source code
25 | * @param string $filename A unique identifier for the source code
26 | *
27 | * @return Twig_TokenStream A token stream instance
28 | *
29 | * @throws Twig_Error_Syntax When the code is syntactically wrong
30 | */
31 | public function tokenize($code, $filename = null);
32 | }
33 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Function/Node.php:
--------------------------------------------------------------------------------
1 |
18 | * @deprecated since 1.12 (to be removed in 2.0)
19 | */
20 | class Twig_Function_Node extends Twig_Function
21 | {
22 | protected $class;
23 |
24 | public function __construct($class, array $options = array())
25 | {
26 | parent::__construct($options);
27 |
28 | $this->class = $class;
29 | }
30 |
31 | public function getClass()
32 | {
33 | return $this->class;
34 | }
35 |
36 | public function compile()
37 | {
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Node/Expression/Test/Divisibleby.php:
--------------------------------------------------------------------------------
1 |
16 | * {% if loop.index is divisible by(3) %}
17 | *
18 | *
19 | * @author Fabien Potencier
20 | */
21 | class Twig_Node_Expression_Test_Divisibleby extends Twig_Node_Expression_Test
22 | {
23 | public function compile(Twig_Compiler $compiler)
24 | {
25 | $compiler
26 | ->raw('(0 == ')
27 | ->subcompile($this->getNode('node'))
28 | ->raw(' % ')
29 | ->subcompile($this->getNode('arguments')->getNode(0))
30 | ->raw(')')
31 | ;
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Filter/Function.php:
--------------------------------------------------------------------------------
1 |
18 | * @deprecated since 1.12 (to be removed in 2.0)
19 | */
20 | class Twig_Filter_Function extends Twig_Filter
21 | {
22 | protected $function;
23 |
24 | public function __construct($function, array $options = array())
25 | {
26 | $options['callable'] = $function;
27 |
28 | parent::__construct($options);
29 |
30 | $this->function = $function;
31 | }
32 |
33 | public function compile()
34 | {
35 | return $this->function;
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/vendor/twig/twig/lib/Twig/Markup.php:
--------------------------------------------------------------------------------
1 |
16 | */
17 | class Twig_Markup implements Countable
18 | {
19 | protected $content;
20 | protected $charset;
21 |
22 | public function __construct($content, $charset)
23 | {
24 | $this->content = (string) $content;
25 | $this->charset = $charset;
26 | }
27 |
28 | public function __toString()
29 | {
30 | return $this->content;
31 | }
32 |
33 | public function count()
34 | {
35 | return function_exists('mb_get_info') ? mb_strlen($this->content, $this->charset) : strlen($this->content);
36 | }
37 | }
38 |
--------------------------------------------------------------------------------