contraint 일괄 체크 함수 추가
This commit is contained in:
@@ -172,4 +172,29 @@ abstract class Constraint{
|
||||
return $this->reason;
|
||||
}
|
||||
|
||||
public static function testAll(array $contraintPacks, array $input):?string{
|
||||
foreach($contraintPacks as $constraintArgs){
|
||||
if (!$constraintArgs){
|
||||
continue;
|
||||
}
|
||||
|
||||
$method = $constraintArgs[0].'::build';
|
||||
|
||||
/** @var \sammo\Constraint\Constraint $contraint */
|
||||
$constraint = call_user_func($method,$input);
|
||||
|
||||
if(count($constraintArgs) > 1){
|
||||
$arg = $constraintArgs[1];
|
||||
$constraint->arg($arg);
|
||||
}
|
||||
|
||||
|
||||
if(!$constraint->test()){
|
||||
return $constraint->reason();
|
||||
}
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
+1
-1
@@ -4,7 +4,7 @@ namespace sammo\Constraint;
|
||||
|
||||
use \sammo\JosaUtil;
|
||||
|
||||
class NoFullCityCapacity extends Constraint{
|
||||
class RemainCityCapacity extends Constraint{
|
||||
const REQ_VALUES = Constraint::REQ_CITY|Constraint::REQ_ARRAY_ARG;
|
||||
|
||||
protected $key;
|
||||
Reference in New Issue
Block a user