aboutsummaryrefslogtreecommitdiffhomepage
path: root/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper
diff options
context:
space:
mode:
authormarvin-borner@live.com2018-04-10 21:50:16 +0200
committermarvin-borner@live.com2018-04-10 21:54:48 +0200
commitfc9401f04a3aca5abb22f87ebc210de8afe11d32 (patch)
treeb0b310f3581764ec3955f4e496a05137a32951c3 /assets/php/vendor/symfony/routing/Tests/Fixtures/dumper
parent286d643180672f20526f3dc3bd19d7b751e2fa97 (diff)
Initial Commit
Diffstat (limited to 'assets/php/vendor/symfony/routing/Tests/Fixtures/dumper')
-rw-r--r--assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher0.php37
-rw-r--r--assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher1.php318
-rw-r--r--assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher2.php380
-rw-r--r--assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher3.php55
-rw-r--r--assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher4.php112
-rw-r--r--assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher5.php209
-rw-r--r--assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher6.php213
-rw-r--r--assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher7.php249
8 files changed, 1573 insertions, 0 deletions
diff --git a/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher0.php b/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher0.php
new file mode 100644
index 0000000..9e9b910
--- /dev/null
+++ b/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher0.php
@@ -0,0 +1,37 @@
+<?php
+
+use Symfony\Component\Routing\Exception\MethodNotAllowedException;
+use Symfony\Component\Routing\Exception\ResourceNotFoundException;
+use Symfony\Component\Routing\RequestContext;
+
+/**
+ * This class has been auto-generated
+ * by the Symfony Routing Component.
+ */
+class ProjectUrlMatcher extends Symfony\Component\Routing\Matcher\UrlMatcher
+{
+ public function __construct(RequestContext $context)
+ {
+ $this->context = $context;
+ }
+
+ public function match($rawPathinfo)
+ {
+ $allow = array();
+ $pathinfo = rawurldecode($rawPathinfo);
+ $trimmedPathinfo = rtrim($pathinfo, '/');
+ $context = $this->context;
+ $request = $this->request ?: $this->createRequest($pathinfo);
+ $requestMethod = $canonicalMethod = $context->getMethod();
+
+ if ('HEAD' === $requestMethod) {
+ $canonicalMethod = 'GET';
+ }
+
+ if ('/' === $pathinfo && !$allow) {
+ throw new Symfony\Component\Routing\Exception\NoConfigurationException();
+ }
+
+ throw 0 < count($allow) ? new MethodNotAllowedException(array_unique($allow)) : new ResourceNotFoundException();
+ }
+}
diff --git a/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher1.php b/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher1.php
new file mode 100644
index 0000000..23a93c1
--- /dev/null
+++ b/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher1.php
@@ -0,0 +1,318 @@
+<?php
+
+use Symfony\Component\Routing\Exception\MethodNotAllowedException;
+use Symfony\Component\Routing\Exception\ResourceNotFoundException;
+use Symfony\Component\Routing\RequestContext;
+
+/**
+ * This class has been auto-generated
+ * by the Symfony Routing Component.
+ */
+class ProjectUrlMatcher extends Symfony\Component\Routing\Matcher\UrlMatcher
+{
+ public function __construct(RequestContext $context)
+ {
+ $this->context = $context;
+ }
+
+ public function match($rawPathinfo)
+ {
+ $allow = array();
+ $pathinfo = rawurldecode($rawPathinfo);
+ $trimmedPathinfo = rtrim($pathinfo, '/');
+ $context = $this->context;
+ $request = $this->request ?: $this->createRequest($pathinfo);
+ $requestMethod = $canonicalMethod = $context->getMethod();
+
+ if ('HEAD' === $requestMethod) {
+ $canonicalMethod = 'GET';
+ }
+
+ if (0 === strpos($pathinfo, '/foo')) {
+ // foo
+ if (preg_match('#^/foo/(?P<bar>baz|symfony)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo')), array ( 'def' => 'test',));
+ }
+
+ // foofoo
+ if ('/foofoo' === $pathinfo) {
+ return array ( 'def' => 'test', '_route' => 'foofoo',);
+ }
+
+ }
+
+ elseif (0 === strpos($pathinfo, '/bar')) {
+ // bar
+ if (preg_match('#^/bar/(?P<foo>[^/]++)$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'bar')), array ());
+ if (!in_array($canonicalMethod, array('GET', 'HEAD'))) {
+ $allow = array_merge($allow, array('GET', 'HEAD'));
+ goto not_bar;
+ }
+
+ return $ret;
+ }
+ not_bar:
+
+ // barhead
+ if (0 === strpos($pathinfo, '/barhead') && preg_match('#^/barhead/(?P<foo>[^/]++)$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'barhead')), array ());
+ if (!in_array($canonicalMethod, array('GET'))) {
+ $allow = array_merge($allow, array('GET'));
+ goto not_barhead;
+ }
+
+ return $ret;
+ }
+ not_barhead:
+
+ }
+
+ elseif (0 === strpos($pathinfo, '/test')) {
+ if (0 === strpos($pathinfo, '/test/baz')) {
+ // baz
+ if ('/test/baz' === $pathinfo) {
+ return array('_route' => 'baz');
+ }
+
+ // baz2
+ if ('/test/baz.html' === $pathinfo) {
+ return array('_route' => 'baz2');
+ }
+
+ // baz3
+ if ('/test/baz3/' === $pathinfo) {
+ return array('_route' => 'baz3');
+ }
+
+ }
+
+ // baz4
+ if (preg_match('#^/test/(?P<foo>[^/]++)/$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'baz4')), array ());
+ }
+
+ // baz5
+ if (preg_match('#^/test/(?P<foo>[^/]++)/$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'baz5')), array ());
+ if (!in_array($requestMethod, array('POST'))) {
+ $allow = array_merge($allow, array('POST'));
+ goto not_baz5;
+ }
+
+ return $ret;
+ }
+ not_baz5:
+
+ // baz.baz6
+ if (preg_match('#^/test/(?P<foo>[^/]++)/$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'baz.baz6')), array ());
+ if (!in_array($requestMethod, array('PUT'))) {
+ $allow = array_merge($allow, array('PUT'));
+ goto not_bazbaz6;
+ }
+
+ return $ret;
+ }
+ not_bazbaz6:
+
+ }
+
+ // quoter
+ if (preg_match('#^/(?P<quoter>[\']+)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'quoter')), array ());
+ }
+
+ // space
+ if ('/spa ce' === $pathinfo) {
+ return array('_route' => 'space');
+ }
+
+ if (0 === strpos($pathinfo, '/a')) {
+ if (0 === strpos($pathinfo, '/a/b\'b')) {
+ // foo1
+ if (preg_match('#^/a/b\'b/(?P<foo>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo1')), array ());
+ }
+
+ // bar1
+ if (preg_match('#^/a/b\'b/(?P<bar>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'bar1')), array ());
+ }
+
+ }
+
+ // overridden
+ if (preg_match('#^/a/(?P<var>.*)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'overridden')), array ());
+ }
+
+ if (0 === strpos($pathinfo, '/a/b\'b')) {
+ // foo2
+ if (preg_match('#^/a/b\'b/(?P<foo1>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo2')), array ());
+ }
+
+ // bar2
+ if (preg_match('#^/a/b\'b/(?P<bar1>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'bar2')), array ());
+ }
+
+ }
+
+ }
+
+ elseif (0 === strpos($pathinfo, '/multi')) {
+ // helloWorld
+ if (0 === strpos($pathinfo, '/multi/hello') && preg_match('#^/multi/hello(?:/(?P<who>[^/]++))?$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'helloWorld')), array ( 'who' => 'World!',));
+ }
+
+ // hey
+ if ('/multi/hey/' === $pathinfo) {
+ return array('_route' => 'hey');
+ }
+
+ // overridden2
+ if ('/multi/new' === $pathinfo) {
+ return array('_route' => 'overridden2');
+ }
+
+ }
+
+ // foo3
+ if (preg_match('#^/(?P<_locale>[^/]++)/b/(?P<foo>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo3')), array ());
+ }
+
+ // bar3
+ if (preg_match('#^/(?P<_locale>[^/]++)/b/(?P<bar>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'bar3')), array ());
+ }
+
+ if (0 === strpos($pathinfo, '/aba')) {
+ // ababa
+ if ('/ababa' === $pathinfo) {
+ return array('_route' => 'ababa');
+ }
+
+ // foo4
+ if (preg_match('#^/aba/(?P<foo>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo4')), array ());
+ }
+
+ }
+
+ $host = $context->getHost();
+
+ if (preg_match('#^a\\.example\\.com$#sDi', $host, $hostMatches)) {
+ // route1
+ if ('/route1' === $pathinfo) {
+ return array('_route' => 'route1');
+ }
+
+ // route2
+ if ('/c2/route2' === $pathinfo) {
+ return array('_route' => 'route2');
+ }
+
+ }
+
+ if (preg_match('#^b\\.example\\.com$#sDi', $host, $hostMatches)) {
+ // route3
+ if ('/c2/route3' === $pathinfo) {
+ return array('_route' => 'route3');
+ }
+
+ }
+
+ if (preg_match('#^a\\.example\\.com$#sDi', $host, $hostMatches)) {
+ // route4
+ if ('/route4' === $pathinfo) {
+ return array('_route' => 'route4');
+ }
+
+ }
+
+ if (preg_match('#^c\\.example\\.com$#sDi', $host, $hostMatches)) {
+ // route5
+ if ('/route5' === $pathinfo) {
+ return array('_route' => 'route5');
+ }
+
+ }
+
+ // route6
+ if ('/route6' === $pathinfo) {
+ return array('_route' => 'route6');
+ }
+
+ if (preg_match('#^(?P<var1>[^\\.]++)\\.example\\.com$#sDi', $host, $hostMatches)) {
+ if (0 === strpos($pathinfo, '/route1')) {
+ // route11
+ if ('/route11' === $pathinfo) {
+ return $this->mergeDefaults(array_replace($hostMatches, array('_route' => 'route11')), array ());
+ }
+
+ // route12
+ if ('/route12' === $pathinfo) {
+ return $this->mergeDefaults(array_replace($hostMatches, array('_route' => 'route12')), array ( 'var1' => 'val',));
+ }
+
+ // route13
+ if (0 === strpos($pathinfo, '/route13') && preg_match('#^/route13/(?P<name>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($hostMatches, $matches, array('_route' => 'route13')), array ());
+ }
+
+ // route14
+ if (0 === strpos($pathinfo, '/route14') && preg_match('#^/route14/(?P<name>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($hostMatches, $matches, array('_route' => 'route14')), array ( 'var1' => 'val',));
+ }
+
+ }
+
+ }
+
+ if (preg_match('#^c\\.example\\.com$#sDi', $host, $hostMatches)) {
+ // route15
+ if (0 === strpos($pathinfo, '/route15') && preg_match('#^/route15/(?P<name>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'route15')), array ());
+ }
+
+ }
+
+ // route16
+ if (0 === strpos($pathinfo, '/route16') && preg_match('#^/route16/(?P<name>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'route16')), array ( 'var1' => 'val',));
+ }
+
+ // route17
+ if ('/route17' === $pathinfo) {
+ return array('_route' => 'route17');
+ }
+
+ // a
+ if ('/a/a...' === $pathinfo) {
+ return array('_route' => 'a');
+ }
+
+ if (0 === strpos($pathinfo, '/a/b')) {
+ // b
+ if (preg_match('#^/a/b/(?P<var>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'b')), array ());
+ }
+
+ // c
+ if (0 === strpos($pathinfo, '/a/b/c') && preg_match('#^/a/b/c/(?P<var>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'c')), array ());
+ }
+
+ }
+
+ if ('/' === $pathinfo && !$allow) {
+ throw new Symfony\Component\Routing\Exception\NoConfigurationException();
+ }
+
+ throw 0 < count($allow) ? new MethodNotAllowedException(array_unique($allow)) : new ResourceNotFoundException();
+ }
+}
diff --git a/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher2.php b/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher2.php
new file mode 100644
index 0000000..e430adb
--- /dev/null
+++ b/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher2.php
@@ -0,0 +1,380 @@
+<?php
+
+use Symfony\Component\Routing\Exception\MethodNotAllowedException;
+use Symfony\Component\Routing\Exception\ResourceNotFoundException;
+use Symfony\Component\Routing\RequestContext;
+
+/**
+ * This class has been auto-generated
+ * by the Symfony Routing Component.
+ */
+class ProjectUrlMatcher extends Symfony\Component\Routing\Tests\Fixtures\RedirectableUrlMatcher
+{
+ public function __construct(RequestContext $context)
+ {
+ $this->context = $context;
+ }
+
+ public function match($rawPathinfo)
+ {
+ $allow = array();
+ $pathinfo = rawurldecode($rawPathinfo);
+ $trimmedPathinfo = rtrim($pathinfo, '/');
+ $context = $this->context;
+ $request = $this->request ?: $this->createRequest($pathinfo);
+ $requestMethod = $canonicalMethod = $context->getMethod();
+
+ if ('HEAD' === $requestMethod) {
+ $canonicalMethod = 'GET';
+ }
+
+ if (0 === strpos($pathinfo, '/foo')) {
+ // foo
+ if (preg_match('#^/foo/(?P<bar>baz|symfony)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo')), array ( 'def' => 'test',));
+ }
+
+ // foofoo
+ if ('/foofoo' === $pathinfo) {
+ return array ( 'def' => 'test', '_route' => 'foofoo',);
+ }
+
+ }
+
+ elseif (0 === strpos($pathinfo, '/bar')) {
+ // bar
+ if (preg_match('#^/bar/(?P<foo>[^/]++)$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'bar')), array ());
+ if (!in_array($canonicalMethod, array('GET', 'HEAD'))) {
+ $allow = array_merge($allow, array('GET', 'HEAD'));
+ goto not_bar;
+ }
+
+ return $ret;
+ }
+ not_bar:
+
+ // barhead
+ if (0 === strpos($pathinfo, '/barhead') && preg_match('#^/barhead/(?P<foo>[^/]++)$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'barhead')), array ());
+ if (!in_array($canonicalMethod, array('GET'))) {
+ $allow = array_merge($allow, array('GET'));
+ goto not_barhead;
+ }
+
+ return $ret;
+ }
+ not_barhead:
+
+ }
+
+ elseif (0 === strpos($pathinfo, '/test')) {
+ if (0 === strpos($pathinfo, '/test/baz')) {
+ // baz
+ if ('/test/baz' === $pathinfo) {
+ return array('_route' => 'baz');
+ }
+
+ // baz2
+ if ('/test/baz.html' === $pathinfo) {
+ return array('_route' => 'baz2');
+ }
+
+ // baz3
+ if ('/test/baz3' === $trimmedPathinfo) {
+ $ret = array('_route' => 'baz3');
+ if ('/' === substr($pathinfo, -1)) {
+ // no-op
+ } elseif ('GET' !== $canonicalMethod) {
+ goto not_baz3;
+ } else {
+ return array_replace($ret, $this->redirect($rawPathinfo.'/', 'baz3'));
+ }
+
+ return $ret;
+ }
+ not_baz3:
+
+ }
+
+ // baz4
+ if (preg_match('#^/test/(?P<foo>[^/]++)/?$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'baz4')), array ());
+ if ('/' === substr($pathinfo, -1)) {
+ // no-op
+ } elseif ('GET' !== $canonicalMethod) {
+ goto not_baz4;
+ } else {
+ return array_replace($ret, $this->redirect($rawPathinfo.'/', 'baz4'));
+ }
+
+ return $ret;
+ }
+ not_baz4:
+
+ // baz5
+ if (preg_match('#^/test/(?P<foo>[^/]++)/$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'baz5')), array ());
+ if (!in_array($requestMethod, array('POST'))) {
+ $allow = array_merge($allow, array('POST'));
+ goto not_baz5;
+ }
+
+ return $ret;
+ }
+ not_baz5:
+
+ // baz.baz6
+ if (preg_match('#^/test/(?P<foo>[^/]++)/$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'baz.baz6')), array ());
+ if (!in_array($requestMethod, array('PUT'))) {
+ $allow = array_merge($allow, array('PUT'));
+ goto not_bazbaz6;
+ }
+
+ return $ret;
+ }
+ not_bazbaz6:
+
+ }
+
+ // quoter
+ if (preg_match('#^/(?P<quoter>[\']+)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'quoter')), array ());
+ }
+
+ // space
+ if ('/spa ce' === $pathinfo) {
+ return array('_route' => 'space');
+ }
+
+ if (0 === strpos($pathinfo, '/a')) {
+ if (0 === strpos($pathinfo, '/a/b\'b')) {
+ // foo1
+ if (preg_match('#^/a/b\'b/(?P<foo>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo1')), array ());
+ }
+
+ // bar1
+ if (preg_match('#^/a/b\'b/(?P<bar>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'bar1')), array ());
+ }
+
+ }
+
+ // overridden
+ if (preg_match('#^/a/(?P<var>.*)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'overridden')), array ());
+ }
+
+ if (0 === strpos($pathinfo, '/a/b\'b')) {
+ // foo2
+ if (preg_match('#^/a/b\'b/(?P<foo1>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo2')), array ());
+ }
+
+ // bar2
+ if (preg_match('#^/a/b\'b/(?P<bar1>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'bar2')), array ());
+ }
+
+ }
+
+ }
+
+ elseif (0 === strpos($pathinfo, '/multi')) {
+ // helloWorld
+ if (0 === strpos($pathinfo, '/multi/hello') && preg_match('#^/multi/hello(?:/(?P<who>[^/]++))?$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'helloWorld')), array ( 'who' => 'World!',));
+ }
+
+ // hey
+ if ('/multi/hey' === $trimmedPathinfo) {
+ $ret = array('_route' => 'hey');
+ if ('/' === substr($pathinfo, -1)) {
+ // no-op
+ } elseif ('GET' !== $canonicalMethod) {
+ goto not_hey;
+ } else {
+ return array_replace($ret, $this->redirect($rawPathinfo.'/', 'hey'));
+ }
+
+ return $ret;
+ }
+ not_hey:
+
+ // overridden2
+ if ('/multi/new' === $pathinfo) {
+ return array('_route' => 'overridden2');
+ }
+
+ }
+
+ // foo3
+ if (preg_match('#^/(?P<_locale>[^/]++)/b/(?P<foo>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo3')), array ());
+ }
+
+ // bar3
+ if (preg_match('#^/(?P<_locale>[^/]++)/b/(?P<bar>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'bar3')), array ());
+ }
+
+ if (0 === strpos($pathinfo, '/aba')) {
+ // ababa
+ if ('/ababa' === $pathinfo) {
+ return array('_route' => 'ababa');
+ }
+
+ // foo4
+ if (preg_match('#^/aba/(?P<foo>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'foo4')), array ());
+ }
+
+ }
+
+ $host = $context->getHost();
+
+ if (preg_match('#^a\\.example\\.com$#sDi', $host, $hostMatches)) {
+ // route1
+ if ('/route1' === $pathinfo) {
+ return array('_route' => 'route1');
+ }
+
+ // route2
+ if ('/c2/route2' === $pathinfo) {
+ return array('_route' => 'route2');
+ }
+
+ }
+
+ if (preg_match('#^b\\.example\\.com$#sDi', $host, $hostMatches)) {
+ // route3
+ if ('/c2/route3' === $pathinfo) {
+ return array('_route' => 'route3');
+ }
+
+ }
+
+ if (preg_match('#^a\\.example\\.com$#sDi', $host, $hostMatches)) {
+ // route4
+ if ('/route4' === $pathinfo) {
+ return array('_route' => 'route4');
+ }
+
+ }
+
+ if (preg_match('#^c\\.example\\.com$#sDi', $host, $hostMatches)) {
+ // route5
+ if ('/route5' === $pathinfo) {
+ return array('_route' => 'route5');
+ }
+
+ }
+
+ // route6
+ if ('/route6' === $pathinfo) {
+ return array('_route' => 'route6');
+ }
+
+ if (preg_match('#^(?P<var1>[^\\.]++)\\.example\\.com$#sDi', $host, $hostMatches)) {
+ if (0 === strpos($pathinfo, '/route1')) {
+ // route11
+ if ('/route11' === $pathinfo) {
+ return $this->mergeDefaults(array_replace($hostMatches, array('_route' => 'route11')), array ());
+ }
+
+ // route12
+ if ('/route12' === $pathinfo) {
+ return $this->mergeDefaults(array_replace($hostMatches, array('_route' => 'route12')), array ( 'var1' => 'val',));
+ }
+
+ // route13
+ if (0 === strpos($pathinfo, '/route13') && preg_match('#^/route13/(?P<name>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($hostMatches, $matches, array('_route' => 'route13')), array ());
+ }
+
+ // route14
+ if (0 === strpos($pathinfo, '/route14') && preg_match('#^/route14/(?P<name>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($hostMatches, $matches, array('_route' => 'route14')), array ( 'var1' => 'val',));
+ }
+
+ }
+
+ }
+
+ if (preg_match('#^c\\.example\\.com$#sDi', $host, $hostMatches)) {
+ // route15
+ if (0 === strpos($pathinfo, '/route15') && preg_match('#^/route15/(?P<name>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'route15')), array ());
+ }
+
+ }
+
+ // route16
+ if (0 === strpos($pathinfo, '/route16') && preg_match('#^/route16/(?P<name>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'route16')), array ( 'var1' => 'val',));
+ }
+
+ // route17
+ if ('/route17' === $pathinfo) {
+ return array('_route' => 'route17');
+ }
+
+ // a
+ if ('/a/a...' === $pathinfo) {
+ return array('_route' => 'a');
+ }
+
+ if (0 === strpos($pathinfo, '/a/b')) {
+ // b
+ if (preg_match('#^/a/b/(?P<var>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'b')), array ());
+ }
+
+ // c
+ if (0 === strpos($pathinfo, '/a/b/c') && preg_match('#^/a/b/c/(?P<var>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'c')), array ());
+ }
+
+ }
+
+ // secure
+ if ('/secure' === $pathinfo) {
+ $ret = array('_route' => 'secure');
+ $requiredSchemes = array ( 'https' => 0,);
+ if (!isset($requiredSchemes[$context->getScheme()])) {
+ if ('GET' !== $canonicalMethod) {
+ goto not_secure;
+ }
+
+ return array_replace($ret, $this->redirect($rawPathinfo, 'secure', key($requiredSchemes)));
+ }
+
+ return $ret;
+ }
+ not_secure:
+
+ // nonsecure
+ if ('/nonsecure' === $pathinfo) {
+ $ret = array('_route' => 'nonsecure');
+ $requiredSchemes = array ( 'http' => 0,);
+ if (!isset($requiredSchemes[$context->getScheme()])) {
+ if ('GET' !== $canonicalMethod) {
+ goto not_nonsecure;
+ }
+
+ return array_replace($ret, $this->redirect($rawPathinfo, 'nonsecure', key($requiredSchemes)));
+ }
+
+ return $ret;
+ }
+ not_nonsecure:
+
+ if ('/' === $pathinfo && !$allow) {
+ throw new Symfony\Component\Routing\Exception\NoConfigurationException();
+ }
+
+ throw 0 < count($allow) ? new MethodNotAllowedException(array_unique($allow)) : new ResourceNotFoundException();
+ }
+}
diff --git a/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher3.php b/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher3.php
new file mode 100644
index 0000000..67c4667
--- /dev/null
+++ b/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher3.php
@@ -0,0 +1,55 @@
+<?php
+
+use Symfony\Component\Routing\Exception\MethodNotAllowedException;
+use Symfony\Component\Routing\Exception\ResourceNotFoundException;
+use Symfony\Component\Routing\RequestContext;
+
+/**
+ * This class has been auto-generated
+ * by the Symfony Routing Component.
+ */
+class ProjectUrlMatcher extends Symfony\Component\Routing\Matcher\UrlMatcher
+{
+ public function __construct(RequestContext $context)
+ {
+ $this->context = $context;
+ }
+
+ public function match($rawPathinfo)
+ {
+ $allow = array();
+ $pathinfo = rawurldecode($rawPathinfo);
+ $trimmedPathinfo = rtrim($pathinfo, '/');
+ $context = $this->context;
+ $request = $this->request ?: $this->createRequest($pathinfo);
+ $requestMethod = $canonicalMethod = $context->getMethod();
+
+ if ('HEAD' === $requestMethod) {
+ $canonicalMethod = 'GET';
+ }
+
+ if (0 === strpos($pathinfo, '/rootprefix')) {
+ // static
+ if ('/rootprefix/test' === $pathinfo) {
+ return array('_route' => 'static');
+ }
+
+ // dynamic
+ if (preg_match('#^/rootprefix/(?P<var>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'dynamic')), array ());
+ }
+
+ }
+
+ // with-condition
+ if ('/with-condition' === $pathinfo && ($context->getMethod() == "GET")) {
+ return array('_route' => 'with-condition');
+ }
+
+ if ('/' === $pathinfo && !$allow) {
+ throw new Symfony\Component\Routing\Exception\NoConfigurationException();
+ }
+
+ throw 0 < count($allow) ? new MethodNotAllowedException(array_unique($allow)) : new ResourceNotFoundException();
+ }
+}
diff --git a/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher4.php b/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher4.php
new file mode 100644
index 0000000..ed07194
--- /dev/null
+++ b/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher4.php
@@ -0,0 +1,112 @@
+<?php
+
+use Symfony\Component\Routing\Exception\MethodNotAllowedException;
+use Symfony\Component\Routing\Exception\ResourceNotFoundException;
+use Symfony\Component\Routing\RequestContext;
+
+/**
+ * This class has been auto-generated
+ * by the Symfony Routing Component.
+ */
+class ProjectUrlMatcher extends Symfony\Component\Routing\Matcher\UrlMatcher
+{
+ public function __construct(RequestContext $context)
+ {
+ $this->context = $context;
+ }
+
+ public function match($rawPathinfo)
+ {
+ $allow = array();
+ $pathinfo = rawurldecode($rawPathinfo);
+ $trimmedPathinfo = rtrim($pathinfo, '/');
+ $context = $this->context;
+ $request = $this->request ?: $this->createRequest($pathinfo);
+ $requestMethod = $canonicalMethod = $context->getMethod();
+
+ if ('HEAD' === $requestMethod) {
+ $canonicalMethod = 'GET';
+ }
+
+ // just_head
+ if ('/just_head' === $pathinfo) {
+ $ret = array('_route' => 'just_head');
+ if (!in_array($requestMethod, array('HEAD'))) {
+ $allow = array_merge($allow, array('HEAD'));
+ goto not_just_head;
+ }
+
+ return $ret;
+ }
+ not_just_head:
+
+ // head_and_get
+ if ('/head_and_get' === $pathinfo) {
+ $ret = array('_route' => 'head_and_get');
+ if (!in_array($canonicalMethod, array('HEAD', 'GET'))) {
+ $allow = array_merge($allow, array('HEAD', 'GET'));
+ goto not_head_and_get;
+ }
+
+ return $ret;
+ }
+ not_head_and_get:
+
+ // get_and_head
+ if ('/get_and_head' === $pathinfo) {
+ $ret = array('_route' => 'get_and_head');
+ if (!in_array($canonicalMethod, array('GET', 'HEAD'))) {
+ $allow = array_merge($allow, array('GET', 'HEAD'));
+ goto not_get_and_head;
+ }
+
+ return $ret;
+ }
+ not_get_and_head:
+
+ // post_and_head
+ if ('/post_and_head' === $pathinfo) {
+ $ret = array('_route' => 'post_and_head');
+ if (!in_array($requestMethod, array('POST', 'HEAD'))) {
+ $allow = array_merge($allow, array('POST', 'HEAD'));
+ goto not_post_and_head;
+ }
+
+ return $ret;
+ }
+ not_post_and_head:
+
+ if (0 === strpos($pathinfo, '/put_and_post')) {
+ // put_and_post
+ if ('/put_and_post' === $pathinfo) {
+ $ret = array('_route' => 'put_and_post');
+ if (!in_array($requestMethod, array('PUT', 'POST'))) {
+ $allow = array_merge($allow, array('PUT', 'POST'));
+ goto not_put_and_post;
+ }
+
+ return $ret;
+ }
+ not_put_and_post:
+
+ // put_and_get_and_head
+ if ('/put_and_post' === $pathinfo) {
+ $ret = array('_route' => 'put_and_get_and_head');
+ if (!in_array($canonicalMethod, array('PUT', 'GET', 'HEAD'))) {
+ $allow = array_merge($allow, array('PUT', 'GET', 'HEAD'));
+ goto not_put_and_get_and_head;
+ }
+
+ return $ret;
+ }
+ not_put_and_get_and_head:
+
+ }
+
+ if ('/' === $pathinfo && !$allow) {
+ throw new Symfony\Component\Routing\Exception\NoConfigurationException();
+ }
+
+ throw 0 < count($allow) ? new MethodNotAllowedException(array_unique($allow)) : new ResourceNotFoundException();
+ }
+}
diff --git a/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher5.php b/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher5.php
new file mode 100644
index 0000000..2b22513
--- /dev/null
+++ b/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher5.php
@@ -0,0 +1,209 @@
+<?php
+
+use Symfony\Component\Routing\Exception\MethodNotAllowedException;
+use Symfony\Component\Routing\Exception\ResourceNotFoundException;
+use Symfony\Component\Routing\RequestContext;
+
+/**
+ * This class has been auto-generated
+ * by the Symfony Routing Component.
+ */
+class ProjectUrlMatcher extends Symfony\Component\Routing\Tests\Fixtures\RedirectableUrlMatcher
+{
+ public function __construct(RequestContext $context)
+ {
+ $this->context = $context;
+ }
+
+ public function match($rawPathinfo)
+ {
+ $allow = array();
+ $pathinfo = rawurldecode($rawPathinfo);
+ $trimmedPathinfo = rtrim($pathinfo, '/');
+ $context = $this->context;
+ $request = $this->request ?: $this->createRequest($pathinfo);
+ $requestMethod = $canonicalMethod = $context->getMethod();
+
+ if ('HEAD' === $requestMethod) {
+ $canonicalMethod = 'GET';
+ }
+
+ if (0 === strpos($pathinfo, '/a')) {
+ // a_first
+ if ('/a/11' === $pathinfo) {
+ return array('_route' => 'a_first');
+ }
+
+ // a_second
+ if ('/a/22' === $pathinfo) {
+ return array('_route' => 'a_second');
+ }
+
+ // a_third
+ if ('/a/333' === $pathinfo) {
+ return array('_route' => 'a_third');
+ }
+
+ }
+
+ // a_wildcard
+ if (preg_match('#^/(?P<param>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'a_wildcard')), array ());
+ }
+
+ if (0 === strpos($pathinfo, '/a')) {
+ // a_fourth
+ if ('/a/44' === $trimmedPathinfo) {
+ $ret = array('_route' => 'a_fourth');
+ if ('/' === substr($pathinfo, -1)) {
+ // no-op
+ } elseif ('GET' !== $canonicalMethod) {
+ goto not_a_fourth;
+ } else {
+ return array_replace($ret, $this->redirect($rawPathinfo.'/', 'a_fourth'));
+ }
+
+ return $ret;
+ }
+ not_a_fourth:
+
+ // a_fifth
+ if ('/a/55' === $trimmedPathinfo) {
+ $ret = array('_route' => 'a_fifth');
+ if ('/' === substr($pathinfo, -1)) {
+ // no-op
+ } elseif ('GET' !== $canonicalMethod) {
+ goto not_a_fifth;
+ } else {
+ return array_replace($ret, $this->redirect($rawPathinfo.'/', 'a_fifth'));
+ }
+
+ return $ret;
+ }
+ not_a_fifth:
+
+ // a_sixth
+ if ('/a/66' === $trimmedPathinfo) {
+ $ret = array('_route' => 'a_sixth');
+ if ('/' === substr($pathinfo, -1)) {
+ // no-op
+ } elseif ('GET' !== $canonicalMethod) {
+ goto not_a_sixth;
+ } else {
+ return array_replace($ret, $this->redirect($rawPathinfo.'/', 'a_sixth'));
+ }
+
+ return $ret;
+ }
+ not_a_sixth:
+
+ }
+
+ // nested_wildcard
+ if (0 === strpos($pathinfo, '/nested') && preg_match('#^/nested/(?P<param>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'nested_wildcard')), array ());
+ }
+
+ if (0 === strpos($pathinfo, '/nested/group')) {
+ // nested_a
+ if ('/nested/group/a' === $trimmedPathinfo) {
+ $ret = array('_route' => 'nested_a');
+ if ('/' === substr($pathinfo, -1)) {
+ // no-op
+ } elseif ('GET' !== $canonicalMethod) {
+ goto not_nested_a;
+ } else {
+ return array_replace($ret, $this->redirect($rawPathinfo.'/', 'nested_a'));
+ }
+
+ return $ret;
+ }
+ not_nested_a:
+
+ // nested_b
+ if ('/nested/group/b' === $trimmedPathinfo) {
+ $ret = array('_route' => 'nested_b');
+ if ('/' === substr($pathinfo, -1)) {
+ // no-op
+ } elseif ('GET' !== $canonicalMethod) {
+ goto not_nested_b;
+ } else {
+ return array_replace($ret, $this->redirect($rawPathinfo.'/', 'nested_b'));
+ }
+
+ return $ret;
+ }
+ not_nested_b:
+
+ // nested_c
+ if ('/nested/group/c' === $trimmedPathinfo) {
+ $ret = array('_route' => 'nested_c');
+ if ('/' === substr($pathinfo, -1)) {
+ // no-op
+ } elseif ('GET' !== $canonicalMethod) {
+ goto not_nested_c;
+ } else {
+ return array_replace($ret, $this->redirect($rawPathinfo.'/', 'nested_c'));
+ }
+
+ return $ret;
+ }
+ not_nested_c:
+
+ }
+
+ elseif (0 === strpos($pathinfo, '/slashed/group')) {
+ // slashed_a
+ if ('/slashed/group' === $trimmedPathinfo) {
+ $ret = array('_route' => 'slashed_a');
+ if ('/' === substr($pathinfo, -1)) {
+ // no-op
+ } elseif ('GET' !== $canonicalMethod) {
+ goto not_slashed_a;
+ } else {
+ return array_replace($ret, $this->redirect($rawPathinfo.'/', 'slashed_a'));
+ }
+
+ return $ret;
+ }
+ not_slashed_a:
+
+ // slashed_b
+ if ('/slashed/group/b' === $trimmedPathinfo) {
+ $ret = array('_route' => 'slashed_b');
+ if ('/' === substr($pathinfo, -1)) {
+ // no-op
+ } elseif ('GET' !== $canonicalMethod) {
+ goto not_slashed_b;
+ } else {
+ return array_replace($ret, $this->redirect($rawPathinfo.'/', 'slashed_b'));
+ }
+
+ return $ret;
+ }
+ not_slashed_b:
+
+ // slashed_c
+ if ('/slashed/group/c' === $trimmedPathinfo) {
+ $ret = array('_route' => 'slashed_c');
+ if ('/' === substr($pathinfo, -1)) {
+ // no-op
+ } elseif ('GET' !== $canonicalMethod) {
+ goto not_slashed_c;
+ } else {
+ return array_replace($ret, $this->redirect($rawPathinfo.'/', 'slashed_c'));
+ }
+
+ return $ret;
+ }
+ not_slashed_c:
+
+ }
+
+ if ('/' === $pathinfo && !$allow) {
+ throw new Symfony\Component\Routing\Exception\NoConfigurationException();
+ }
+
+ throw 0 < count($allow) ? new MethodNotAllowedException(array_unique($allow)) : new ResourceNotFoundException();
+ }
+}
diff --git a/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher6.php b/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher6.php
new file mode 100644
index 0000000..48ecdf8
--- /dev/null
+++ b/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher6.php
@@ -0,0 +1,213 @@
+<?php
+
+use Symfony\Component\Routing\Exception\MethodNotAllowedException;
+use Symfony\Component\Routing\Exception\ResourceNotFoundException;
+use Symfony\Component\Routing\RequestContext;
+
+/**
+ * This class has been auto-generated
+ * by the Symfony Routing Component.
+ */
+class ProjectUrlMatcher extends Symfony\Component\Routing\Matcher\UrlMatcher
+{
+ public function __construct(RequestContext $context)
+ {
+ $this->context = $context;
+ }
+
+ public function match($rawPathinfo)
+ {
+ $allow = array();
+ $pathinfo = rawurldecode($rawPathinfo);
+ $trimmedPathinfo = rtrim($pathinfo, '/');
+ $context = $this->context;
+ $request = $this->request ?: $this->createRequest($pathinfo);
+ $requestMethod = $canonicalMethod = $context->getMethod();
+
+ if ('HEAD' === $requestMethod) {
+ $canonicalMethod = 'GET';
+ }
+
+ if (0 === strpos($pathinfo, '/trailing/simple')) {
+ // simple_trailing_slash_no_methods
+ if ('/trailing/simple/no-methods/' === $pathinfo) {
+ return array('_route' => 'simple_trailing_slash_no_methods');
+ }
+
+ // simple_trailing_slash_GET_method
+ if ('/trailing/simple/get-method/' === $pathinfo) {
+ $ret = array('_route' => 'simple_trailing_slash_GET_method');
+ if (!in_array($canonicalMethod, array('GET'))) {
+ $allow = array_merge($allow, array('GET'));
+ goto not_simple_trailing_slash_GET_method;
+ }
+
+ return $ret;
+ }
+ not_simple_trailing_slash_GET_method:
+
+ // simple_trailing_slash_HEAD_method
+ if ('/trailing/simple/head-method/' === $pathinfo) {
+ $ret = array('_route' => 'simple_trailing_slash_HEAD_method');
+ if (!in_array($requestMethod, array('HEAD'))) {
+ $allow = array_merge($allow, array('HEAD'));
+ goto not_simple_trailing_slash_HEAD_method;
+ }
+
+ return $ret;
+ }
+ not_simple_trailing_slash_HEAD_method:
+
+ // simple_trailing_slash_POST_method
+ if ('/trailing/simple/post-method/' === $pathinfo) {
+ $ret = array('_route' => 'simple_trailing_slash_POST_method');
+ if (!in_array($requestMethod, array('POST'))) {
+ $allow = array_merge($allow, array('POST'));
+ goto not_simple_trailing_slash_POST_method;
+ }
+
+ return $ret;
+ }
+ not_simple_trailing_slash_POST_method:
+
+ }
+
+ elseif (0 === strpos($pathinfo, '/trailing/regex')) {
+ // regex_trailing_slash_no_methods
+ if (0 === strpos($pathinfo, '/trailing/regex/no-methods') && preg_match('#^/trailing/regex/no\\-methods/(?P<param>[^/]++)/$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'regex_trailing_slash_no_methods')), array ());
+ }
+
+ // regex_trailing_slash_GET_method
+ if (0 === strpos($pathinfo, '/trailing/regex/get-method') && preg_match('#^/trailing/regex/get\\-method/(?P<param>[^/]++)/$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'regex_trailing_slash_GET_method')), array ());
+ if (!in_array($canonicalMethod, array('GET'))) {
+ $allow = array_merge($allow, array('GET'));
+ goto not_regex_trailing_slash_GET_method;
+ }
+
+ return $ret;
+ }
+ not_regex_trailing_slash_GET_method:
+
+ // regex_trailing_slash_HEAD_method
+ if (0 === strpos($pathinfo, '/trailing/regex/head-method') && preg_match('#^/trailing/regex/head\\-method/(?P<param>[^/]++)/$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'regex_trailing_slash_HEAD_method')), array ());
+ if (!in_array($requestMethod, array('HEAD'))) {
+ $allow = array_merge($allow, array('HEAD'));
+ goto not_regex_trailing_slash_HEAD_method;
+ }
+
+ return $ret;
+ }
+ not_regex_trailing_slash_HEAD_method:
+
+ // regex_trailing_slash_POST_method
+ if (0 === strpos($pathinfo, '/trailing/regex/post-method') && preg_match('#^/trailing/regex/post\\-method/(?P<param>[^/]++)/$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'regex_trailing_slash_POST_method')), array ());
+ if (!in_array($requestMethod, array('POST'))) {
+ $allow = array_merge($allow, array('POST'));
+ goto not_regex_trailing_slash_POST_method;
+ }
+
+ return $ret;
+ }
+ not_regex_trailing_slash_POST_method:
+
+ }
+
+ elseif (0 === strpos($pathinfo, '/not-trailing/simple')) {
+ // simple_not_trailing_slash_no_methods
+ if ('/not-trailing/simple/no-methods' === $pathinfo) {
+ return array('_route' => 'simple_not_trailing_slash_no_methods');
+ }
+
+ // simple_not_trailing_slash_GET_method
+ if ('/not-trailing/simple/get-method' === $pathinfo) {
+ $ret = array('_route' => 'simple_not_trailing_slash_GET_method');
+ if (!in_array($canonicalMethod, array('GET'))) {
+ $allow = array_merge($allow, array('GET'));
+ goto not_simple_not_trailing_slash_GET_method;
+ }
+
+ return $ret;
+ }
+ not_simple_not_trailing_slash_GET_method:
+
+ // simple_not_trailing_slash_HEAD_method
+ if ('/not-trailing/simple/head-method' === $pathinfo) {
+ $ret = array('_route' => 'simple_not_trailing_slash_HEAD_method');
+ if (!in_array($requestMethod, array('HEAD'))) {
+ $allow = array_merge($allow, array('HEAD'));
+ goto not_simple_not_trailing_slash_HEAD_method;
+ }
+
+ return $ret;
+ }
+ not_simple_not_trailing_slash_HEAD_method:
+
+ // simple_not_trailing_slash_POST_method
+ if ('/not-trailing/simple/post-method' === $pathinfo) {
+ $ret = array('_route' => 'simple_not_trailing_slash_POST_method');
+ if (!in_array($requestMethod, array('POST'))) {
+ $allow = array_merge($allow, array('POST'));
+ goto not_simple_not_trailing_slash_POST_method;
+ }
+
+ return $ret;
+ }
+ not_simple_not_trailing_slash_POST_method:
+
+ }
+
+ elseif (0 === strpos($pathinfo, '/not-trailing/regex')) {
+ // regex_not_trailing_slash_no_methods
+ if (0 === strpos($pathinfo, '/not-trailing/regex/no-methods') && preg_match('#^/not\\-trailing/regex/no\\-methods/(?P<param>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'regex_not_trailing_slash_no_methods')), array ());
+ }
+
+ // regex_not_trailing_slash_GET_method
+ if (0 === strpos($pathinfo, '/not-trailing/regex/get-method') && preg_match('#^/not\\-trailing/regex/get\\-method/(?P<param>[^/]++)$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'regex_not_trailing_slash_GET_method')), array ());
+ if (!in_array($canonicalMethod, array('GET'))) {
+ $allow = array_merge($allow, array('GET'));
+ goto not_regex_not_trailing_slash_GET_method;
+ }
+
+ return $ret;
+ }
+ not_regex_not_trailing_slash_GET_method:
+
+ // regex_not_trailing_slash_HEAD_method
+ if (0 === strpos($pathinfo, '/not-trailing/regex/head-method') && preg_match('#^/not\\-trailing/regex/head\\-method/(?P<param>[^/]++)$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'regex_not_trailing_slash_HEAD_method')), array ());
+ if (!in_array($requestMethod, array('HEAD'))) {
+ $allow = array_merge($allow, array('HEAD'));
+ goto not_regex_not_trailing_slash_HEAD_method;
+ }
+
+ return $ret;
+ }
+ not_regex_not_trailing_slash_HEAD_method:
+
+ // regex_not_trailing_slash_POST_method
+ if (0 === strpos($pathinfo, '/not-trailing/regex/post-method') && preg_match('#^/not\\-trailing/regex/post\\-method/(?P<param>[^/]++)$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'regex_not_trailing_slash_POST_method')), array ());
+ if (!in_array($requestMethod, array('POST'))) {
+ $allow = array_merge($allow, array('POST'));
+ goto not_regex_not_trailing_slash_POST_method;
+ }
+
+ return $ret;
+ }
+ not_regex_not_trailing_slash_POST_method:
+
+ }
+
+ if ('/' === $pathinfo && !$allow) {
+ throw new Symfony\Component\Routing\Exception\NoConfigurationException();
+ }
+
+ throw 0 < count($allow) ? new MethodNotAllowedException(array_unique($allow)) : new ResourceNotFoundException();
+ }
+}
diff --git a/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher7.php b/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher7.php
new file mode 100644
index 0000000..81d76ea
--- /dev/null
+++ b/assets/php/vendor/symfony/routing/Tests/Fixtures/dumper/url_matcher7.php
@@ -0,0 +1,249 @@
+<?php
+
+use Symfony\Component\Routing\Exception\MethodNotAllowedException;
+use Symfony\Component\Routing\Exception\ResourceNotFoundException;
+use Symfony\Component\Routing\RequestContext;
+
+/**
+ * This class has been auto-generated
+ * by the Symfony Routing Component.
+ */
+class ProjectUrlMatcher extends Symfony\Component\Routing\Tests\Fixtures\RedirectableUrlMatcher
+{
+ public function __construct(RequestContext $context)
+ {
+ $this->context = $context;
+ }
+
+ public function match($rawPathinfo)
+ {
+ $allow = array();
+ $pathinfo = rawurldecode($rawPathinfo);
+ $trimmedPathinfo = rtrim($pathinfo, '/');
+ $context = $this->context;
+ $request = $this->request ?: $this->createRequest($pathinfo);
+ $requestMethod = $canonicalMethod = $context->getMethod();
+
+ if ('HEAD' === $requestMethod) {
+ $canonicalMethod = 'GET';
+ }
+
+ if (0 === strpos($pathinfo, '/trailing/simple')) {
+ // simple_trailing_slash_no_methods
+ if ('/trailing/simple/no-methods' === $trimmedPathinfo) {
+ $ret = array('_route' => 'simple_trailing_slash_no_methods');
+ if ('/' === substr($pathinfo, -1)) {
+ // no-op
+ } elseif ('GET' !== $canonicalMethod) {
+ goto not_simple_trailing_slash_no_methods;
+ } else {
+ return array_replace($ret, $this->redirect($rawPathinfo.'/', 'simple_trailing_slash_no_methods'));
+ }
+
+ return $ret;
+ }
+ not_simple_trailing_slash_no_methods:
+
+ // simple_trailing_slash_GET_method
+ if ('/trailing/simple/get-method' === $trimmedPathinfo) {
+ $ret = array('_route' => 'simple_trailing_slash_GET_method');
+ if ('/' === substr($pathinfo, -1)) {
+ // no-op
+ } elseif ('GET' !== $canonicalMethod) {
+ goto not_simple_trailing_slash_GET_method;
+ } else {
+ return array_replace($ret, $this->redirect($rawPathinfo.'/', 'simple_trailing_slash_GET_method'));
+ }
+
+ if (!in_array($canonicalMethod, array('GET'))) {
+ $allow = array_merge($allow, array('GET'));
+ goto not_simple_trailing_slash_GET_method;
+ }
+
+ return $ret;
+ }
+ not_simple_trailing_slash_GET_method:
+
+ // simple_trailing_slash_HEAD_method
+ if ('/trailing/simple/head-method/' === $pathinfo) {
+ $ret = array('_route' => 'simple_trailing_slash_HEAD_method');
+ if (!in_array($requestMethod, array('HEAD'))) {
+ $allow = array_merge($allow, array('HEAD'));
+ goto not_simple_trailing_slash_HEAD_method;
+ }
+
+ return $ret;
+ }
+ not_simple_trailing_slash_HEAD_method:
+
+ // simple_trailing_slash_POST_method
+ if ('/trailing/simple/post-method/' === $pathinfo) {
+ $ret = array('_route' => 'simple_trailing_slash_POST_method');
+ if (!in_array($requestMethod, array('POST'))) {
+ $allow = array_merge($allow, array('POST'));
+ goto not_simple_trailing_slash_POST_method;
+ }
+
+ return $ret;
+ }
+ not_simple_trailing_slash_POST_method:
+
+ }
+
+ elseif (0 === strpos($pathinfo, '/trailing/regex')) {
+ // regex_trailing_slash_no_methods
+ if (0 === strpos($pathinfo, '/trailing/regex/no-methods') && preg_match('#^/trailing/regex/no\\-methods/(?P<param>[^/]++)/?$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'regex_trailing_slash_no_methods')), array ());
+ if ('/' === substr($pathinfo, -1)) {
+ // no-op
+ } elseif ('GET' !== $canonicalMethod) {
+ goto not_regex_trailing_slash_no_methods;
+ } else {
+ return array_replace($ret, $this->redirect($rawPathinfo.'/', 'regex_trailing_slash_no_methods'));
+ }
+
+ return $ret;
+ }
+ not_regex_trailing_slash_no_methods:
+
+ // regex_trailing_slash_GET_method
+ if (0 === strpos($pathinfo, '/trailing/regex/get-method') && preg_match('#^/trailing/regex/get\\-method/(?P<param>[^/]++)/?$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'regex_trailing_slash_GET_method')), array ());
+ if ('/' === substr($pathinfo, -1)) {
+ // no-op
+ } elseif ('GET' !== $canonicalMethod) {
+ goto not_regex_trailing_slash_GET_method;
+ } else {
+ return array_replace($ret, $this->redirect($rawPathinfo.'/', 'regex_trailing_slash_GET_method'));
+ }
+
+ if (!in_array($canonicalMethod, array('GET'))) {
+ $allow = array_merge($allow, array('GET'));
+ goto not_regex_trailing_slash_GET_method;
+ }
+
+ return $ret;
+ }
+ not_regex_trailing_slash_GET_method:
+
+ // regex_trailing_slash_HEAD_method
+ if (0 === strpos($pathinfo, '/trailing/regex/head-method') && preg_match('#^/trailing/regex/head\\-method/(?P<param>[^/]++)/$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'regex_trailing_slash_HEAD_method')), array ());
+ if (!in_array($requestMethod, array('HEAD'))) {
+ $allow = array_merge($allow, array('HEAD'));
+ goto not_regex_trailing_slash_HEAD_method;
+ }
+
+ return $ret;
+ }
+ not_regex_trailing_slash_HEAD_method:
+
+ // regex_trailing_slash_POST_method
+ if (0 === strpos($pathinfo, '/trailing/regex/post-method') && preg_match('#^/trailing/regex/post\\-method/(?P<param>[^/]++)/$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'regex_trailing_slash_POST_method')), array ());
+ if (!in_array($requestMethod, array('POST'))) {
+ $allow = array_merge($allow, array('POST'));
+ goto not_regex_trailing_slash_POST_method;
+ }
+
+ return $ret;
+ }
+ not_regex_trailing_slash_POST_method:
+
+ }
+
+ elseif (0 === strpos($pathinfo, '/not-trailing/simple')) {
+ // simple_not_trailing_slash_no_methods
+ if ('/not-trailing/simple/no-methods' === $pathinfo) {
+ return array('_route' => 'simple_not_trailing_slash_no_methods');
+ }
+
+ // simple_not_trailing_slash_GET_method
+ if ('/not-trailing/simple/get-method' === $pathinfo) {
+ $ret = array('_route' => 'simple_not_trailing_slash_GET_method');
+ if (!in_array($canonicalMethod, array('GET'))) {
+ $allow = array_merge($allow, array('GET'));
+ goto not_simple_not_trailing_slash_GET_method;
+ }
+
+ return $ret;
+ }
+ not_simple_not_trailing_slash_GET_method:
+
+ // simple_not_trailing_slash_HEAD_method
+ if ('/not-trailing/simple/head-method' === $pathinfo) {
+ $ret = array('_route' => 'simple_not_trailing_slash_HEAD_method');
+ if (!in_array($requestMethod, array('HEAD'))) {
+ $allow = array_merge($allow, array('HEAD'));
+ goto not_simple_not_trailing_slash_HEAD_method;
+ }
+
+ return $ret;
+ }
+ not_simple_not_trailing_slash_HEAD_method:
+
+ // simple_not_trailing_slash_POST_method
+ if ('/not-trailing/simple/post-method' === $pathinfo) {
+ $ret = array('_route' => 'simple_not_trailing_slash_POST_method');
+ if (!in_array($requestMethod, array('POST'))) {
+ $allow = array_merge($allow, array('POST'));
+ goto not_simple_not_trailing_slash_POST_method;
+ }
+
+ return $ret;
+ }
+ not_simple_not_trailing_slash_POST_method:
+
+ }
+
+ elseif (0 === strpos($pathinfo, '/not-trailing/regex')) {
+ // regex_not_trailing_slash_no_methods
+ if (0 === strpos($pathinfo, '/not-trailing/regex/no-methods') && preg_match('#^/not\\-trailing/regex/no\\-methods/(?P<param>[^/]++)$#sD', $pathinfo, $matches)) {
+ return $this->mergeDefaults(array_replace($matches, array('_route' => 'regex_not_trailing_slash_no_methods')), array ());
+ }
+
+ // regex_not_trailing_slash_GET_method
+ if (0 === strpos($pathinfo, '/not-trailing/regex/get-method') && preg_match('#^/not\\-trailing/regex/get\\-method/(?P<param>[^/]++)$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'regex_not_trailing_slash_GET_method')), array ());
+ if (!in_array($canonicalMethod, array('GET'))) {
+ $allow = array_merge($allow, array('GET'));
+ goto not_regex_not_trailing_slash_GET_method;
+ }
+
+ return $ret;
+ }
+ not_regex_not_trailing_slash_GET_method:
+
+ // regex_not_trailing_slash_HEAD_method
+ if (0 === strpos($pathinfo, '/not-trailing/regex/head-method') && preg_match('#^/not\\-trailing/regex/head\\-method/(?P<param>[^/]++)$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'regex_not_trailing_slash_HEAD_method')), array ());
+ if (!in_array($requestMethod, array('HEAD'))) {
+ $allow = array_merge($allow, array('HEAD'));
+ goto not_regex_not_trailing_slash_HEAD_method;
+ }
+
+ return $ret;
+ }
+ not_regex_not_trailing_slash_HEAD_method:
+
+ // regex_not_trailing_slash_POST_method
+ if (0 === strpos($pathinfo, '/not-trailing/regex/post-method') && preg_match('#^/not\\-trailing/regex/post\\-method/(?P<param>[^/]++)$#sD', $pathinfo, $matches)) {
+ $ret = $this->mergeDefaults(array_replace($matches, array('_route' => 'regex_not_trailing_slash_POST_method')), array ());
+ if (!in_array($requestMethod, array('POST'))) {
+ $allow = array_merge($allow, array('POST'));
+ goto not_regex_not_trailing_slash_POST_method;
+ }
+
+ return $ret;
+ }
+ not_regex_not_trailing_slash_POST_method:
+
+ }
+
+ if ('/' === $pathinfo && !$allow) {
+ throw new Symfony\Component\Routing\Exception\NoConfigurationException();
+ }
+
+ throw 0 < count($allow) ? new MethodNotAllowedException(array_unique($allow)) : new ResourceNotFoundException();
+ }
+}