summaryrefslogtreecommitdiff
path: root/tests/test_scoping
diff options
context:
space:
mode:
authorKevin Chabowski <kevin@kch42.de>2014-05-24 01:39:33 +0200
committerKevin Chabowski <kevin@kch42.de>2014-05-24 01:39:33 +0200
commit84d815f4e006e02521759070bb89025dab80b219 (patch)
tree418a03f0b8be181cb29230ad5e808d3213b4d3cb /tests/test_scoping
parentfdbe2e9521aa54ec6e0b70c1cb0f532248e531e4 (diff)
downloadste-84d815f4e006e02521759070bb89025dab80b219.tar.gz
ste-84d815f4e006e02521759070bb89025dab80b219.tar.bz2
ste-84d815f4e006e02521759070bb89025dab80b219.zip
Added scoping.
ste:mktag generated tags now have an own scope. They even resemble closures, since they inherit their parent scope. A lot of work was done to keep this compatible with older programs. However: * Templates that relied on the non-scoping behavior of tags will probably fail. * Since $ste->vars is no longer an actual array, things like $ste->vars["foo"]["bar"] = "baz" are no longer possible! A single field access will still work: $ste->vars["foo"] = "bar"
Diffstat (limited to 'tests/test_scoping')
-rw-r--r--tests/test_scoping/.gitignore3
-rw-r--r--tests/test_scoping/code.php5
-rw-r--r--tests/test_scoping/test.tpl6
-rw-r--r--tests/test_scoping/want0
4 files changed, 14 insertions, 0 deletions
diff --git a/tests/test_scoping/.gitignore b/tests/test_scoping/.gitignore
new file mode 100644
index 0000000..de2a41b
--- /dev/null
+++ b/tests/test_scoping/.gitignore
@@ -0,0 +1,3 @@
+have
+*.ast
+*.transc.php
diff --git a/tests/test_scoping/code.php b/tests/test_scoping/code.php
new file mode 100644
index 0000000..de8c553
--- /dev/null
+++ b/tests/test_scoping/code.php
@@ -0,0 +1,5 @@
+<?php
+
+function test_func($ste) {
+
+}
diff --git a/tests/test_scoping/test.tpl b/tests/test_scoping/test.tpl
new file mode 100644
index 0000000..25a46e7
--- /dev/null
+++ b/tests/test_scoping/test.tpl
@@ -0,0 +1,6 @@
+<ste:mktag name="foo">
+ <ste:set var="bla">!</ste:set>
+</ste:mktag>
+
+<ste:foo />
+$bla \ No newline at end of file
diff --git a/tests/test_scoping/want b/tests/test_scoping/want
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tests/test_scoping/want