Adding virtual inheritance basic class validation
Publish PHP Package / docker (push) Successful in 5s Details

This commit is contained in:
Pavel Shevaev 2024-03-12 19:03:57 +03:00
parent b99a386be2
commit 50c48b5d63
1 changed files with 1 additions and 0 deletions

View File

@ -209,6 +209,7 @@ function data2value($name, \mtgType $type, $buf, $prefix = '', $tokens = array()
if(array_key_exists('virtual', $tokens))
{
$str .= $cond_indent."\$vclass__ = AutogenBundle::getClassName(\metagen_php\\val_uint32(\metagen_php\array_extract_val(\$tmp_sub_arr__, \$assoc, '\$id', {$type->getClassId()})));\n";
$str .= $cond_indent."if(!is_subclass_of(\$vclass__, '{$type->getName()}')) throw new Exception(\$vclass__ . ' is not subclass of {$type->getName()}');\n";
$str .= $cond_indent."{$pname} = new \$vclass__(\$tmp_sub_arr__, \$assoc);\n";
}
else