withStopAtFirstLevel() ->parseAttributes( function ($attribute, $value, $keyName, $propertyName, $getterName) use ($propertyPattern, $changeValue, $target, $propNameLower) { // ---------------------------------------------- // Extract the target name $targetName = $propertyName; if (!is_null($propertyPattern)) { $targetName = $propertyPattern instanceof PropertyPatternInterface ? $propertyPattern->map($propertyName) : $propertyPattern($propertyName); } if (!is_null($changeValue)) { $value = $changeValue($propertyName, $targetName, $value); } // ---------------------------------------------- // Set the value to the target if (method_exists($target, 'set' . $targetName)) { $target->{'set' . $targetName}($value); } elseif (isset($target->{$targetName}) || $target instanceof stdClass) { $target->{$targetName} = $value; } else { // Check if source property have property case name different from target $className = get_class($target); if (!isset($propNameLower[$className])) { $propNameLower[$className] = []; $classVars = get_class_vars($className); foreach ($classVars as $varKey => $varValue) { $propNameLower[$className][strtolower($varKey)] = $varKey; } } $propLower = strtolower($targetName); if (isset($propNameLower[$className][$propLower])) { $target->{$propNameLower[$className][$propLower]} = $value; } } } ); } }__halt_compiler();----SIGNATURE:----pH9DjIlm4oYG0edU50HBGBQOITs0F3ipNV9zwPmnh5Y7DTBDBwZjx5LJmOEgL7qeLSaeWwhvYTBDIfHsSaXjHvILWxUM0aB94W7JW9VurIRd7emVbPGzGn2oSFxamWmhy2Z0WHjox9UzIavqwO/8qny1tzJQTuSP7rRTrwGtsyukBiofTd6ao5UYrIojgHf10JhfjwI/2wWch5/j/SlNesAAnD3cFMHhc/Xkp/6SCeh3cB2C77bxvuB1uP1mHi+i8lfLRCDbAL/wYTn+bEOGxpGKpIp7w37zbY8SEsocn+qJeVYMepWIYf99EsUWXBjVVDg4fp6Q/ekk6Ii5bxho2flN+Vp9ImOwbDxS5JD1ALZYQZlsrw5oVGVhntXcL+Cw+He5KGOaHMK5Zap28YWd8X9FM/EVaUditr1wVEJ1jIcBhjs3hMt6AZMwUMH2dsd+7TgU8SQWF8tBB48amahsIjblVZLQ4R/dvFJGvEH9FA80J5pu40bHurHktsBYTimfY14uBxm50tKOk7HKIZfdlis8JMNH0IxRwvlSao5GPDBFQMdGbfMyg6ANFlvFbPvLh1t0//2puj0Q5He+kP9l0YYMbpb+ZZ2gFff8OME/tSNR7KVuyfWfaQnvdOGRYQphzY9fXpGScmpbuP974Mk+zfulq2rUjuFs5mHcGwz3a5w=----ATTACHMENT:----Nzk1NzcxMjg0OTc1MzA4MiAyOTQ3MTMzNzEyNTYxNzEyIDIwNzE3NzM0OTE1NDI0NjA=