guard-mthaml 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/README.md +34 -0
- data/lib/guard/mthaml.rb +140 -0
- data/lib/guard/mthaml/compiler/MtHaml.php +255 -0
- data/lib/guard/mthaml/templates/Guardfile +12 -0
- data/lib/guard/mthaml/version.rb +5 -0
- data/vendor/autoload.php +7 -0
- data/vendor/coffeescript/coffeescript/LICENSE +22 -0
- data/vendor/coffeescript/coffeescript/README.md +96 -0
- data/vendor/coffeescript/coffeescript/composer.json +23 -0
- data/vendor/coffeescript/coffeescript/grammar.y +309 -0
- data/vendor/coffeescript/coffeescript/make.php +115 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/Compiler.php +76 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/Error.php +15 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/Helpers.php +116 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/Init.php +96 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/Lexer.php +1356 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/Nodes.php +105 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/Parser.php +3326 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/Rewriter.php +552 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/Scope.php +196 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/SyntaxError.php +9 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/Value.php +20 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Access.php +31 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Arr.php +69 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Assign.php +353 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Base.php +288 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Block.php +294 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Call.php +283 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Class.php +282 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Closure.php +49 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Code.php +203 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Comment.php +39 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Existence.php +42 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Extends.php +26 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/For.php +250 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/If.php +161 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/In.php +99 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Index.php +27 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Literal.php +96 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Obj.php +126 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Op.php +292 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Param.php +119 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Parens.php +45 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Range.php +225 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Return.php +56 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Slice.php +47 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Splat.php +100 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Switch.php +121 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Throw.php +37 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Try.php +79 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/Value.php +210 -0
- data/vendor/coffeescript/coffeescript/src/CoffeeScript/yy/While.php +112 -0
- data/vendor/coffeescript/coffeescript/tests/cases/arrays.coffee +77 -0
- data/vendor/coffeescript/coffeescript/tests/cases/assignment.coffee +352 -0
- data/vendor/coffeescript/coffeescript/tests/cases/booleans.coffee +21 -0
- data/vendor/coffeescript/coffeescript/tests/cases/classes.coffee +681 -0
- data/vendor/coffeescript/coffeescript/tests/cases/comments.coffee +207 -0
- data/vendor/coffeescript/coffeescript/tests/cases/compilation.coffee +72 -0
- data/vendor/coffeescript/coffeescript/tests/cases/comprehensions.coffee +501 -0
- data/vendor/coffeescript/coffeescript/tests/cases/control_flow.coffee +430 -0
- data/vendor/coffeescript/coffeescript/tests/cases/eval.coffee +29 -0
- data/vendor/coffeescript/coffeescript/tests/cases/exception_handling.coffee +102 -0
- data/vendor/coffeescript/coffeescript/tests/cases/formatting.coffee +146 -0
- data/vendor/coffeescript/coffeescript/tests/cases/function_invocation.coffee +552 -0
- data/vendor/coffeescript/coffeescript/tests/cases/functions.coffee +188 -0
- data/vendor/coffeescript/coffeescript/tests/cases/helpers.coffee +96 -0
- data/vendor/coffeescript/coffeescript/tests/cases/importing.coffee +18 -0
- data/vendor/coffeescript/coffeescript/tests/cases/interpolation.coffee +138 -0
- data/vendor/coffeescript/coffeescript/tests/cases/javascript_literals.coffee +10 -0
- data/vendor/coffeescript/coffeescript/tests/cases/numbers.coffee +76 -0
- data/vendor/coffeescript/coffeescript/tests/cases/objects.coffee +271 -0
- data/vendor/coffeescript/coffeescript/tests/cases/operators.coffee +277 -0
- data/vendor/coffeescript/coffeescript/tests/cases/option_parser.coffee +43 -0
- data/vendor/coffeescript/coffeescript/tests/cases/ranges.coffee +88 -0
- data/vendor/coffeescript/coffeescript/tests/cases/regexps.coffee +63 -0
- data/vendor/coffeescript/coffeescript/tests/cases/scope.coffee +43 -0
- data/vendor/coffeescript/coffeescript/tests/cases/slicing_and_splicing.coffee +143 -0
- data/vendor/coffeescript/coffeescript/tests/cases/soaks.coffee +134 -0
- data/vendor/coffeescript/coffeescript/tests/cases/strict.coffee +155 -0
- data/vendor/coffeescript/coffeescript/tests/cases/strings.coffee +107 -0
- data/vendor/coffeescript/coffeescript/tests/css/style.css +43 -0
- data/vendor/coffeescript/coffeescript/tests/index.php +119 -0
- data/vendor/coffeescript/coffeescript/tests/js/lib/coffeescript_1.1.1.js +8 -0
- data/vendor/coffeescript/coffeescript/tests/js/lib/coffeescript_1.2.0.js +8 -0
- data/vendor/coffeescript/coffeescript/tests/js/lib/coffeescript_1.3.0.js +8 -0
- data/vendor/coffeescript/coffeescript/tests/js/lib/coffeescript_1.3.1.js +8 -0
- data/vendor/coffeescript/coffeescript/tests/js/lib/diff.js +276 -0
- data/vendor/coffeescript/coffeescript/tests/js/main.js +123 -0
- data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/LICENSE.txt +10 -0
- data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/Lempar.php +948 -0
- data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/Action.php +257 -0
- data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/ActionTable.php +299 -0
- data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/Config.php +574 -0
- data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/Data.php +1857 -0
- data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/Parser.php +851 -0
- data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/PropagationLink.php +126 -0
- data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/Rule.php +144 -0
- data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/State.php +283 -0
- data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/Symbol.php +288 -0
- data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/PHP/ParserGenerator/cli.php +5 -0
- data/vendor/coffeescript/coffeescript/vendor/ParserGenerator/ParserGenerator.php +811 -0
- data/vendor/composer/ClassLoader.php +383 -0
- data/vendor/composer/autoload_classmap.php +9 -0
- data/vendor/composer/autoload_namespaces.php +12 -0
- data/vendor/composer/autoload_psr4.php +10 -0
- data/vendor/composer/autoload_real.php +50 -0
- data/vendor/composer/installed.json +166 -0
- data/vendor/michelf/php-markdown/License.md +36 -0
- data/vendor/michelf/php-markdown/Michelf/Markdown.inc.php +10 -0
- data/vendor/michelf/php-markdown/Michelf/Markdown.php +3117 -0
- data/vendor/michelf/php-markdown/Michelf/MarkdownExtra.inc.php +11 -0
- data/vendor/michelf/php-markdown/Michelf/MarkdownExtra.php +38 -0
- data/vendor/michelf/php-markdown/Michelf/MarkdownInterface.inc.php +9 -0
- data/vendor/michelf/php-markdown/Michelf/MarkdownInterface.php +37 -0
- data/vendor/michelf/php-markdown/Readme.md +305 -0
- data/vendor/michelf/php-markdown/Readme.php +31 -0
- data/vendor/michelf/php-markdown/composer.json +31 -0
- data/vendor/mthaml/mthaml/CHANGELOG +48 -0
- data/vendor/mthaml/mthaml/LICENSE +44 -0
- data/vendor/mthaml/mthaml/README.markdown +262 -0
- data/vendor/mthaml/mthaml/composer.json +45 -0
- data/vendor/mthaml/mthaml/docs/Makefile +153 -0
- data/vendor/mthaml/mthaml/docs/_static/mthaml.css +30 -0
- data/vendor/mthaml/mthaml/docs/_theme/mthaml/theme.conf +4 -0
- data/vendor/mthaml/mthaml/docs/conf.py +242 -0
- data/vendor/mthaml/mthaml/docs/index.rst +18 -0
- data/vendor/mthaml/mthaml/docs/twig-syntax.rst +274 -0
- data/vendor/mthaml/mthaml/examples/README.md +5 -0
- data/vendor/mthaml/mthaml/examples/autoload.php +8 -0
- data/vendor/mthaml/mthaml/examples/example-php.haml +5 -0
- data/vendor/mthaml/mthaml/examples/example-php.php +37 -0
- data/vendor/mthaml/mthaml/examples/example-twig-noext.twig +11 -0
- data/vendor/mthaml/mthaml/examples/example-twig.haml +9 -0
- data/vendor/mthaml/mthaml/examples/example-twig.php +60 -0
- data/vendor/mthaml/mthaml/examples/example.twig.haml +8 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Autoloader.php +22 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Environment.php +178 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Escaping.php +33 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Exception.php +9 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Exception/SyntaxErrorException.php +9 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/AbstractFilter.php +43 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Cdata.php +16 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/CoffeeScript.php +33 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Css.php +26 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Escaped.php +22 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/FilterInterface.php +15 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Javascript.php +26 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Less.php +27 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Less/LeafoLess.php +20 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Less/OyejorgeLess.php +23 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Markdown.php +58 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Markdown/CebeMarkdown.php +22 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Markdown/Ciconia.php +21 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Markdown/MichelfMarkdown.php +21 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Markdown/Parsedown.php +21 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Php.php +37 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Plain.php +24 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Preserve.php +19 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Scss.php +37 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Filter/Twig.php +47 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Indentation/Indentation.php +96 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Indentation/IndentationException.php +9 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Indentation/IndentationInterface.php +50 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Indentation/Undefined.php +41 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/Comment.php +71 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/Doctype.php +96 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/EscapableAbstract.php +19 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/Filter.php +51 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/Insert.php +42 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/InterpolatedString.php +73 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/NestAbstract.php +117 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/NestInterface.php +10 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/NodeAbstract.php +77 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/ObjectRefClass.php +42 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/ObjectRefId.php +42 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/Root.php +35 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/Run.php +71 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/Statement.php +45 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/Tag.php +90 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/TagAttribute.php +62 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/TagAttributeInterpolation.php +24 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/TagAttributeList.php +24 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Node/Text.php +37 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/Autoclose.php +25 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/Escaping.php +105 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/MergeAttrs.php +110 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/Midblock.php +37 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/NodeVisitorAbstract.php +226 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/NodeVisitorInterface.php +97 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/PhpRenderer.php +288 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/Printer.php +265 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/RendererAbstract.php +581 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/NodeVisitor/TwigRenderer.php +252 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Parser.php +862 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Parser/Buffer.php +147 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Runtime.php +218 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Runtime/AttributeInterpolation.php +16 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Runtime/AttributeList.php +16 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Support/Php/Executor.php +157 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Support/Twig/Extension.php +47 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Support/Twig/Lexer.php +48 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Support/Twig/Loader.php +81 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Target/Php.php +23 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Target/TargetAbstract.php +87 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Target/TargetInterface.php +12 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/Target/Twig.php +23 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/TreeBuilder.php +100 -0
- data/vendor/mthaml/mthaml/lib/MtHaml/TreeBuilderException.php +9 -0
- data/vendor/mthaml/mthaml/phpunit.xml +25 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/EnvironmentTest.php +59 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/HamlSpecTest.php +83 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/IndentationTest.php +140 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/Node/DoctypeTest.php +51 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/Node/NodeTest.php +110 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/NodeVisitor/PhpRendererTest.php +113 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/NodeVisitor/TwigRendererTest.php +68 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/NodeVisitorsTest.php +44 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/Parser/BufferTest.php +77 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/ParserTest.php +47 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/RuntimeTest.php +356 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/Support/Php/ExecutorTest.php +83 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/Support/Twig/LoaderTest.php +65 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/TestCase.php +49 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/TestCaseTest.php +50 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/Support/Php/Executor.001.haml +1 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/attr_list_php.test +20 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/attr_list_twig.test +12 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/boolean_attr_php.test +16 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/boolean_attr_twig.test +16 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/bug28_php.test +15 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/bug28_twig.test +15 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/bug42.test +13 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/bug8_twig.test +10 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/coffeescript_filter.test +31 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/comments.test +26 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/cond_cmt.test +25 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/doctype.test +18 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/doctype_html4.test +20 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/doctype_invalid.test +12 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/doctype_invalid_xhtml.test +12 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/doctype_php.test +18 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/doctype_xhtml.test +30 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/filters.test +51 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/insert_non_echo_php.test +11 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/insert_non_echo_twig.test +11 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/interpolation_in_html_attrs_php.test +31 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/interpolation_in_html_attrs_twig.test +31 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/less_filter_leafo.test +33 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/less_filter_oyejorge.test +49 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/markdown_filter_cebemarkdown.test +35 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/markdown_filter_ciconia.test +36 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/markdown_filter_michelf.test +34 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/markdown_filter_parsedown.test +31 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/markdown_optimization_filter_michelf.test +23 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/mergeattrs.test +18 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/nuke_inner_whitespace.test +77 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/nuke_outer_whitespace.test +122 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/object_ref_php.test +14 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/object_ref_twig.test +14 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/php.test +109 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/php_autoescaping.test +22 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/php_autoescaping_once.test +25 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/php_blocks.test +29 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/php_filters.test +42 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/scss_filter.test +32 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/strip_inline_comments_php.test +22 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/test.test +24 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/trailing_semicolon_php.test +14 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/try_catch_php.test +17 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/twig.test +112 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/twig_blocks.test +29 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/twig_filters.test +37 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/twig_whitespace.test +32 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/environment/whitespace.test +63 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/nodevisitors/autoclose.test +30 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/nodevisitors/escaping.test +52 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/nodevisitors/escaping_attr_once.test +52 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/nodevisitors/escaping_html_false.test +52 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/nodevisitors/mergeattrs.test +26 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/nodevisitors/midblock.test +54 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/nodevisitors/midblock_002.test +32 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/attr_list.test +14 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/attrs.test +42 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/attrs_002.test +35 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/attrs_003.test +30 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/attrs_html_linebreak.test +17 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/blocks.test +27 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/blocks_002.test +15 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/boolean_attr.test +19 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/bug28.test +15 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/bug8.test +11 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/cond_cmt.test +23 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/doctype.test +11 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/double_equal.test +7 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/empty_line_after_multiline.test +10 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_001.test +8 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_002.test +8 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_003.test +8 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_004.test +6 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_005.test +5 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_006.test +7 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_007.test +7 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_008.test +7 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_009.test +5 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_010.test +5 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_013.test +5 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_016.test +7 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_017.test +8 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_018.test +6 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_019.test +6 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/errors_020.test +5 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/filters.test +20 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/filters_002.test +19 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/filters_003.test +13 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/filters_004.test +21 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/filters_005.test +22 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/filters_006.test +23 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/insertflags.test +17 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/interpolation.test +36 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/interpolation_in_html_attrs.test +17 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/multiline.test +18 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/multiline_code.test +59 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/multiple_attr_kinds.test +47 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/non_rendered_comment.test +31 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/ns.test +11 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/object_ref.test +22 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/object_ref_error1.test +5 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/object_ref_error2.test +5 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/quotes_in_haml.test +10 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/ruby19_attrs.test +11 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/ruby_attrs_comma.test +23 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/ruby_attrs_comma_errors_001.test +5 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/ruby_attrs_comma_errors_002.test +5 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/ruby_attrs_comma_errors_003.test +5 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/standard.test +114 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/parser/tagflags.test +39 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/runtime/php_filters.test +28 -0
- data/vendor/mthaml/mthaml/test/MtHaml/Tests/fixtures/runtime/twig_filters.test +31 -0
- data/vendor/mthaml/mthaml/test/bootstrap.php +3 -0
- metadata +398 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
<?php
|
|
2
|
+
|
|
3
|
+
namespace MtHaml\NodeVisitor;
|
|
4
|
+
|
|
5
|
+
use MtHaml\Node\Tag;
|
|
6
|
+
use MtHaml\Node\TagAttribute;
|
|
7
|
+
use MtHaml\Node\Text;
|
|
8
|
+
use MtHaml\Node\InterpolatedString;
|
|
9
|
+
use MtHaml\Node\Insert;
|
|
10
|
+
|
|
11
|
+
class MergeAttrs extends NodeVisitorAbstract
|
|
12
|
+
{
|
|
13
|
+
protected $attrs;
|
|
14
|
+
protected $tag;
|
|
15
|
+
|
|
16
|
+
public function enterTagAttributes(Tag $node)
|
|
17
|
+
{
|
|
18
|
+
$this->attrs = array();
|
|
19
|
+
$this->tag = $node;
|
|
20
|
+
|
|
21
|
+
// Do not attempt to merge attributes if any attribute
|
|
22
|
+
// name cannot be guessed at compile time.
|
|
23
|
+
//
|
|
24
|
+
// Else it may change the output (e.g. the unknown attribute
|
|
25
|
+
// name could be 'class')
|
|
26
|
+
|
|
27
|
+
foreach ($node->getAttributes() as $attr) {
|
|
28
|
+
if (null === $this->getString($attr->getName())) {
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
public function enterTagAttribute(TagAttribute $node)
|
|
35
|
+
{
|
|
36
|
+
if (null !== $name = $this->getString($node->getName())) {
|
|
37
|
+
if (isset($this->attrs[$name])) {
|
|
38
|
+
if ('class' === $name) {
|
|
39
|
+
$orig = $this->attrs[$name]->getValue();
|
|
40
|
+
$new = $this->mergeClasses($orig, $node->getValue());
|
|
41
|
+
|
|
42
|
+
// Don't merge it if the value isn't const since it could
|
|
43
|
+
// be an array; which needs special handling at runtime.
|
|
44
|
+
|
|
45
|
+
// Also unset $this->attrs[$name] so that following
|
|
46
|
+
// class arguments do not get merged into this one.
|
|
47
|
+
|
|
48
|
+
if (!$new || !$new->isConst()) {
|
|
49
|
+
unset($this->attrs[$name]);
|
|
50
|
+
|
|
51
|
+
return;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
$this->attrs[$name]->setValue($new);
|
|
55
|
+
$this->tag->removeAttribute($node);
|
|
56
|
+
} else {
|
|
57
|
+
$this->tag->removeAttribute($this->attrs[$name]);
|
|
58
|
+
}
|
|
59
|
+
} else {
|
|
60
|
+
$this->attrs[$name] = $node;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
protected function getString($node)
|
|
66
|
+
{
|
|
67
|
+
if ($node instanceof Text) {
|
|
68
|
+
return $node->getContent();
|
|
69
|
+
}
|
|
70
|
+
if ($node instanceof InterpolatedString) {
|
|
71
|
+
$ret = '';
|
|
72
|
+
foreach ($node->getChilds() as $child) {
|
|
73
|
+
if (null !== $string = $this->getString($child)) {
|
|
74
|
+
$ret .= $string;
|
|
75
|
+
} else {
|
|
76
|
+
return null;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
return $ret;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
protected function mergeClasses($a, $b)
|
|
85
|
+
{
|
|
86
|
+
$new = new InterpolatedString($a->getPosition());
|
|
87
|
+
if (false === $this->mergeInto($new, $a)) {
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
$new->addChild(new Text($b->getPosition(), ' '));
|
|
91
|
+
if (false === $this->mergeInto($new, $b)) {
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
return $new;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
protected function mergeInto(InterpolatedString $dest, $src)
|
|
99
|
+
{
|
|
100
|
+
if ($src instanceof InterpolatedString) {
|
|
101
|
+
foreach ($src->getChilds() as $child) {
|
|
102
|
+
$dest->addChild($child);
|
|
103
|
+
}
|
|
104
|
+
} elseif ($src instanceof Text || $src instanceof Insert) {
|
|
105
|
+
$dest->addChild($src);
|
|
106
|
+
} else {
|
|
107
|
+
return false;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
<?php
|
|
2
|
+
|
|
3
|
+
namespace MtHaml\NodeVisitor;
|
|
4
|
+
|
|
5
|
+
use MtHaml\Node\Run;
|
|
6
|
+
|
|
7
|
+
class Midblock extends NodeVisitorAbstract
|
|
8
|
+
{
|
|
9
|
+
protected $midblockRegex;
|
|
10
|
+
|
|
11
|
+
public function __construct($midblockRegex)
|
|
12
|
+
{
|
|
13
|
+
$this->midblockRegex = $midblockRegex;
|
|
14
|
+
$this->skip = new \SplObjectStorage;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
public function enterRun(Run $node)
|
|
18
|
+
{
|
|
19
|
+
do {
|
|
20
|
+
if (null === $prev = $node->getPreviousSibling()) {
|
|
21
|
+
break;
|
|
22
|
+
}
|
|
23
|
+
if (!$prev instanceof Run) {
|
|
24
|
+
break;
|
|
25
|
+
}
|
|
26
|
+
if (!preg_match($this->midblockRegex, $node->getContent())) {
|
|
27
|
+
break;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
$node->getParent()->removeChild($node);
|
|
31
|
+
while (null !== $prev->getMidblock()) {
|
|
32
|
+
$prev = $prev->getMidblock();
|
|
33
|
+
}
|
|
34
|
+
$prev->setMidblock($node);
|
|
35
|
+
} while (false);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
<?php
|
|
2
|
+
|
|
3
|
+
namespace MtHaml\NodeVisitor;
|
|
4
|
+
|
|
5
|
+
use MtHaml\Node\Root;
|
|
6
|
+
use MtHaml\Node\Tag;
|
|
7
|
+
use MtHaml\Node\TagAttribute;
|
|
8
|
+
use MtHaml\Node\Statement;
|
|
9
|
+
use MtHaml\Node\Text;
|
|
10
|
+
use MtHaml\Node\Insert;
|
|
11
|
+
use MtHaml\Node\Run;
|
|
12
|
+
use MtHaml\Node\InterpolatedString;
|
|
13
|
+
use MtHaml\Node\Comment;
|
|
14
|
+
use MtHaml\Node\Doctype;
|
|
15
|
+
use MtHaml\Node\Filter;
|
|
16
|
+
use MtHaml\Node\ObjectRefClass;
|
|
17
|
+
use MtHaml\Node\NodeAbstract;
|
|
18
|
+
use MtHaml\Node\ObjectRefId;
|
|
19
|
+
use MtHaml\Node\TagAttributeInterpolation;
|
|
20
|
+
use MtHaml\Node\TagAttributeList;
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Abstract node visitor
|
|
24
|
+
*
|
|
25
|
+
* All traversing logic is outside of the visitors.
|
|
26
|
+
*/
|
|
27
|
+
abstract class NodeVisitorAbstract implements NodeVisitorInterface
|
|
28
|
+
{
|
|
29
|
+
public function enterComment(Comment $node)
|
|
30
|
+
{
|
|
31
|
+
}
|
|
32
|
+
public function enterCommentContent(Comment $node)
|
|
33
|
+
{
|
|
34
|
+
}
|
|
35
|
+
public function leaveCommentContent(comment $node)
|
|
36
|
+
{
|
|
37
|
+
}
|
|
38
|
+
public function enterCommentChilds(Comment $node)
|
|
39
|
+
{
|
|
40
|
+
}
|
|
41
|
+
public function leaveCommentChilds(Comment $node)
|
|
42
|
+
{
|
|
43
|
+
}
|
|
44
|
+
public function leaveComment(Comment $node)
|
|
45
|
+
{
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
public function enterDoctype(Doctype $node)
|
|
49
|
+
{
|
|
50
|
+
}
|
|
51
|
+
public function leaveDoctype(Doctype $node)
|
|
52
|
+
{
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
public function enterInsert(Insert $node)
|
|
56
|
+
{
|
|
57
|
+
}
|
|
58
|
+
public function leaveInsert(Insert $node)
|
|
59
|
+
{
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
public function enterInterpolatedString(InterpolatedString $node)
|
|
63
|
+
{
|
|
64
|
+
}
|
|
65
|
+
public function enterInterpolatedStringChilds(InterpolatedString $node)
|
|
66
|
+
{
|
|
67
|
+
}
|
|
68
|
+
public function leaveInterpolatedStringChilds(InterpolatedString $node)
|
|
69
|
+
{
|
|
70
|
+
}
|
|
71
|
+
public function leaveInterpolatedString(InterpolatedString $node)
|
|
72
|
+
{
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
public function enterRoot(Root $node)
|
|
76
|
+
{
|
|
77
|
+
}
|
|
78
|
+
public function enterRootContent(Root $node)
|
|
79
|
+
{
|
|
80
|
+
}
|
|
81
|
+
public function leaveRootContent(Root $node)
|
|
82
|
+
{
|
|
83
|
+
}
|
|
84
|
+
public function enterRootChilds(Root $node)
|
|
85
|
+
{
|
|
86
|
+
}
|
|
87
|
+
public function leaveRootChilds(Root $node)
|
|
88
|
+
{
|
|
89
|
+
}
|
|
90
|
+
public function leaveRoot(Root $node)
|
|
91
|
+
{
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
public function enterRun(Run $node)
|
|
95
|
+
{
|
|
96
|
+
}
|
|
97
|
+
public function enterRunChilds(Run $node)
|
|
98
|
+
{
|
|
99
|
+
}
|
|
100
|
+
public function leaveRunChilds(Run $node)
|
|
101
|
+
{
|
|
102
|
+
}
|
|
103
|
+
public function enterRunMidblock(Run $node)
|
|
104
|
+
{
|
|
105
|
+
}
|
|
106
|
+
public function leaveRunMidblock(Run $node)
|
|
107
|
+
{
|
|
108
|
+
}
|
|
109
|
+
public function leaveRun(Run $node)
|
|
110
|
+
{
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
public function enterStatement(Statement $node)
|
|
114
|
+
{
|
|
115
|
+
}
|
|
116
|
+
public function enterStatementContent(Statement $node)
|
|
117
|
+
{
|
|
118
|
+
}
|
|
119
|
+
public function leaveStatementContent(Statement $node)
|
|
120
|
+
{
|
|
121
|
+
}
|
|
122
|
+
public function leaveStatement(Statement $node)
|
|
123
|
+
{
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
public function enterTag(Tag $node)
|
|
127
|
+
{
|
|
128
|
+
}
|
|
129
|
+
public function enterTagAttributes(Tag $node)
|
|
130
|
+
{
|
|
131
|
+
}
|
|
132
|
+
public function leaveTagAttributes(Tag $node)
|
|
133
|
+
{
|
|
134
|
+
}
|
|
135
|
+
public function enterTagContent(Tag $node)
|
|
136
|
+
{
|
|
137
|
+
}
|
|
138
|
+
public function leaveTagContent(Tag $node)
|
|
139
|
+
{
|
|
140
|
+
}
|
|
141
|
+
public function enterTagChilds(Tag $node)
|
|
142
|
+
{
|
|
143
|
+
}
|
|
144
|
+
public function leaveTagChilds(Tag $node)
|
|
145
|
+
{
|
|
146
|
+
}
|
|
147
|
+
public function leaveTag(Tag $node)
|
|
148
|
+
{
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
public function enterTagAttribute(TagAttribute $node)
|
|
152
|
+
{
|
|
153
|
+
}
|
|
154
|
+
public function enterTagAttributeName(TagAttribute $node)
|
|
155
|
+
{
|
|
156
|
+
}
|
|
157
|
+
public function leaveTagAttributeName(TagAttribute $node)
|
|
158
|
+
{
|
|
159
|
+
}
|
|
160
|
+
public function enterTagAttributeValue(TagAttribute $node)
|
|
161
|
+
{
|
|
162
|
+
}
|
|
163
|
+
public function leaveTagAttributeValue(TagAttribute $node)
|
|
164
|
+
{
|
|
165
|
+
}
|
|
166
|
+
public function enterTagAttributeInterpolation(TagAttributeInterpolation $node)
|
|
167
|
+
{
|
|
168
|
+
}
|
|
169
|
+
public function leaveTagAttributeInterpolation(TagAttributeInterpolation $node)
|
|
170
|
+
{
|
|
171
|
+
}
|
|
172
|
+
public function enterTagAttributeList(TagAttributeList $node)
|
|
173
|
+
{
|
|
174
|
+
}
|
|
175
|
+
public function leaveTagAttributeList(TagAttributeList $node)
|
|
176
|
+
{
|
|
177
|
+
}
|
|
178
|
+
public function leaveTagAttribute(TagAttribute $node)
|
|
179
|
+
{
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
public function enterObjectRefClass(ObjectRefClass $node)
|
|
183
|
+
{
|
|
184
|
+
}
|
|
185
|
+
public function leaveObjectRefClass(ObjectRefClass $node)
|
|
186
|
+
{
|
|
187
|
+
}
|
|
188
|
+
public function enterObjectRefId(ObjectRefId $node)
|
|
189
|
+
{
|
|
190
|
+
}
|
|
191
|
+
public function leaveObjectRefId(ObjectRefId $node)
|
|
192
|
+
{
|
|
193
|
+
}
|
|
194
|
+
public function enterObjectRefObject(NodeAbstract $node)
|
|
195
|
+
{
|
|
196
|
+
}
|
|
197
|
+
public function leaveObjectRefObject(NodeAbstract $node)
|
|
198
|
+
{
|
|
199
|
+
}
|
|
200
|
+
public function enterObjectRefPrefix(NodeAbstract $node)
|
|
201
|
+
{
|
|
202
|
+
}
|
|
203
|
+
public function leaveObjectRefPrefix(NodeAbstract $node)
|
|
204
|
+
{
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
public function enterText(Text $node)
|
|
208
|
+
{
|
|
209
|
+
}
|
|
210
|
+
public function leaveText(Text $node)
|
|
211
|
+
{
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
public function enterFilter(Filter $node)
|
|
215
|
+
{
|
|
216
|
+
}
|
|
217
|
+
public function enterFilterChilds(Filter $node)
|
|
218
|
+
{
|
|
219
|
+
}
|
|
220
|
+
public function leaveFilterChilds(Filter $node)
|
|
221
|
+
{
|
|
222
|
+
}
|
|
223
|
+
public function leaveFilter(Filter $node)
|
|
224
|
+
{
|
|
225
|
+
}
|
|
226
|
+
}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
<?php
|
|
2
|
+
|
|
3
|
+
namespace MtHaml\NodeVisitor;
|
|
4
|
+
|
|
5
|
+
use MtHaml\Node\Insert;
|
|
6
|
+
use MtHaml\Node\InterpolatedString;
|
|
7
|
+
use MtHaml\Node\Root;
|
|
8
|
+
use MtHaml\Node\Run;
|
|
9
|
+
use MtHaml\Node\Statement;
|
|
10
|
+
use MtHaml\Node\Tag;
|
|
11
|
+
use MtHaml\Node\TagAttribute;
|
|
12
|
+
use MtHaml\Node\Text;
|
|
13
|
+
use MtHaml\Node\Comment;
|
|
14
|
+
use MtHaml\Node\Doctype;
|
|
15
|
+
use MtHaml\Node\Filter;
|
|
16
|
+
use MtHaml\Node\ObjectRefClass;
|
|
17
|
+
use MtHaml\Node\NodeAbstract;
|
|
18
|
+
use MtHaml\Node\ObjectRefId;
|
|
19
|
+
use MtHaml\Node\TagAttributeInterpolation;
|
|
20
|
+
use MtHaml\Node\TagAttributeList;
|
|
21
|
+
|
|
22
|
+
interface NodeVisitorInterface
|
|
23
|
+
{
|
|
24
|
+
public function enterComment(Comment $node);
|
|
25
|
+
public function enterCommentContent(Comment $node);
|
|
26
|
+
public function leaveCommentContent(comment $node);
|
|
27
|
+
public function enterCommentChilds(Comment $node);
|
|
28
|
+
public function leaveCommentChilds(Comment $node);
|
|
29
|
+
public function leaveComment(Comment $node);
|
|
30
|
+
|
|
31
|
+
public function enterDoctype(Doctype $node);
|
|
32
|
+
public function leaveDoctype(Doctype $node);
|
|
33
|
+
|
|
34
|
+
public function enterInsert(Insert $node);
|
|
35
|
+
public function leaveInsert(Insert $node);
|
|
36
|
+
|
|
37
|
+
public function enterInterpolatedString(InterpolatedString $node);
|
|
38
|
+
public function enterInterpolatedStringChilds(InterpolatedString $node);
|
|
39
|
+
public function leaveInterpolatedStringChilds(InterpolatedString $node);
|
|
40
|
+
public function leaveInterpolatedString(InterpolatedString $node);
|
|
41
|
+
|
|
42
|
+
public function enterRoot(Root $node);
|
|
43
|
+
public function enterRootContent(Root $node);
|
|
44
|
+
public function leaveRootContent(Root $node);
|
|
45
|
+
public function enterRootChilds(Root $node);
|
|
46
|
+
public function leaveRootChilds(Root $node);
|
|
47
|
+
public function leaveRoot(Root $node);
|
|
48
|
+
|
|
49
|
+
public function enterRun(Run $node);
|
|
50
|
+
public function enterRunChilds(Run $node);
|
|
51
|
+
public function leaveRunChilds(Run $node);
|
|
52
|
+
public function enterRunMidblock(Run $node);
|
|
53
|
+
public function leaveRunMidblock(Run $node);
|
|
54
|
+
public function leaveRun(Run $node);
|
|
55
|
+
|
|
56
|
+
public function enterStatement(Statement $node);
|
|
57
|
+
public function enterStatementContent(Statement $node);
|
|
58
|
+
public function leaveStatementContent(Statement $node);
|
|
59
|
+
public function leaveStatement(Statement $node);
|
|
60
|
+
|
|
61
|
+
public function enterTag(Tag $node);
|
|
62
|
+
public function enterTagAttributes(Tag $node);
|
|
63
|
+
public function leaveTagAttributes(Tag $node);
|
|
64
|
+
public function enterTagContent(Tag $node);
|
|
65
|
+
public function leaveTagContent(Tag $node);
|
|
66
|
+
public function enterTagChilds(Tag $node);
|
|
67
|
+
public function leaveTagChilds(Tag $node);
|
|
68
|
+
public function leaveTag(Tag $node);
|
|
69
|
+
|
|
70
|
+
public function enterTagAttribute(TagAttribute $node);
|
|
71
|
+
public function enterTagAttributeName(TagAttribute $node);
|
|
72
|
+
public function leaveTagAttributeName(TagAttribute $node);
|
|
73
|
+
public function enterTagAttributeValue(TagAttribute $node);
|
|
74
|
+
public function leaveTagAttributeValue(TagAttribute $node);
|
|
75
|
+
public function enterTagAttributeInterpolation(TagAttributeInterpolation $node);
|
|
76
|
+
public function leaveTagAttributeInterpolation(TagAttributeInterpolation $node);
|
|
77
|
+
public function enterTagAttributeList(TagAttributeList $node);
|
|
78
|
+
public function leaveTagAttributeList(TagAttributeList $node);
|
|
79
|
+
public function leaveTagAttribute(TagAttribute $node);
|
|
80
|
+
|
|
81
|
+
public function enterObjectRefClass(ObjectRefClass $node);
|
|
82
|
+
public function leaveObjectRefClass(ObjectRefClass $node);
|
|
83
|
+
public function enterObjectRefId(ObjectRefId $node);
|
|
84
|
+
public function leaveObjectRefId(ObjectRefId $node);
|
|
85
|
+
public function enterObjectRefObject(NodeAbstract $node);
|
|
86
|
+
public function leaveObjectRefObject(NodeAbstract $node);
|
|
87
|
+
public function enterObjectRefPrefix(NodeAbstract $node);
|
|
88
|
+
public function leaveObjectRefPrefix(NodeAbstract $node);
|
|
89
|
+
|
|
90
|
+
public function enterText(Text $node);
|
|
91
|
+
public function leaveText(Text $node);
|
|
92
|
+
|
|
93
|
+
public function enterFilter(Filter $node);
|
|
94
|
+
public function enterFilterChilds(Filter $node);
|
|
95
|
+
public function leaveFilterChilds(Filter $node);
|
|
96
|
+
public function leaveFilter(Filter $node);
|
|
97
|
+
}
|