/**
* Parse inline parameter with syntax as
* #propertyName,type=string,dbype=Varchar,nullValue=N/A,handler=string#
* @param string parameter token
* @param array file and node details for exception message.
*/
protected function parseMapping($token, $scope)
{
$mapping = new TParameterProperty();
$properties = explode(',', $token);
$mapping->setProperty(trim(array_shift($properties)));
foreach ($properties as $property) {
$prop = explode('=', $property);
$name = trim($prop[0]);
$value = trim($prop[1]);
if ($mapping->canSetProperty($name)) {
$mapping->{'set' . $name}($value);
} else {
throw new TSqlMapUndefinedException('sqlmap_undefined_property_inline_map', $name, $scope['file'], $scope['node'], $token);
}
}
return $mapping;
}