Merge branch '2.2' into 2.3

* 2.2:
  [Routing] fix phpdoc
  [Yaml] Fix comment containing a colon on a scalar line being parsed as a hash.
This commit is contained in:
Fabien Potencier 2013-08-23 17:14:07 +02:00
commit 39f59b0fe9
3 changed files with 16 additions and 2 deletions

View File

@ -57,7 +57,7 @@ class Route implements \Serializable
private $options = array();
/**
* @var null|RouteCompiler
* @var null|CompiledRoute
*/
private $compiled;

View File

@ -111,7 +111,7 @@ class Parser
$data[] = $this->parseValue($values['value'], $exceptionOnInvalidType, $objectSupport);
}
}
} elseif (preg_match('#^(?P<key>'.Inline::REGEX_QUOTED_STRING.'|[^ \'"\[\{].*?) *\:(\s+(?P<value>.+?))?\s*$#u', $this->currentLine, $values)) {
} elseif (preg_match('#^(?P<key>'.Inline::REGEX_QUOTED_STRING.'|[^ \'"\[\{].*?) *\:(\s+(?P<value>.+?))?\s*$#u', $this->currentLine, $values) && false === strpos($values['key'],' #')) {
if ($context && 'sequence' == $context) {
throw new ParseException('You cannot define a mapping item when in a sequence');
}

View File

@ -49,3 +49,17 @@ yaml: |
foo: bar # a comment
php: |
array('foo' => 'bar')
---
test: Comment containing a colon on a hash line
brief: >
Comment containing a colon on a scalar line
yaml: 'foo # comment: this is also part of the comment'
php: |
'foo'
---
test: 'Hash key containing a #'
brief: >
'Hash key containing a #'
yaml: 'foo#bar: baz'
php: |
array('foo#bar' => 'baz')