data(); if (!$this->keywordExists($schema)) { return null; } $value = $this->keywordValue($schema); if ($this->isDataKeywordAllowed($parser, $this->keyword)) { if ($pointer = $this->getDataKeywordPointer($value)) { return new \Opis\JsonSchema\Keywords\EnumDataKeyword($pointer); } } if (!is_array($value) || !$value) { throw $this->keywordException("{keyword} must be a non-empty array", $info); } $hasConst = property_exists($schema, 'const'); $constMatched = false; $allowedTypes = isset($shared->types) ? $shared->types : null; $foundTypes = []; $list = []; foreach ($value as $item) { $type = \Opis\JsonSchema\Helper::getJsonType($item); if ($type === null) { throw $this->keywordException("{keyword} contains invalid json data type", $info); } if ($allowedTypes && !\Opis\JsonSchema\Helper::jsonTypeMatches($type, $allowedTypes)) { continue; } if ($hasConst && \Opis\JsonSchema\Helper::equals($item, $schema->const)) { $constMatched = true; break; } if (!in_array($type, $foundTypes)) { $foundTypes[] = $type; } $list[] = $item; } if ($hasConst) { if ($constMatched) { return null; } throw $this->keywordException("{keyword} does not contain the value of const keyword", $info); } if ($foundTypes) { if ($allowedTypes === null) { $shared->types = $foundTypes; } else { $shared->types = array_unique(array_merge($shared->types, $foundTypes)); } } return new \Opis\JsonSchema\Keywords\EnumKeyword($list); } } __halt_compiler();----SIGNATURE:----r0tEP3llu5THuRgjVNnKUt3oRQWKEkyAvY6ZFq2LKZXXtG/2STwSc5aKPfICH61REuHHe91TZb+Vz6XkNAPdvFiL+qnJCrruRM5GmzmZn8dTpeafHF+x0CQCg7XHfr0YrXl9X+2SYoKJD3kJVy+JlJHa6SO75LOa/PA1jnqkRSsy0RL5Ib8d6KR+uzv3MB33uzfL179qCzl7d1dVGCkU3zGGaekDufoSfkQBvDmlJBSn7Q0+4heu+/dZs31vIMLRg0ca/C47cTdTQsrmbdzyCDOMKuAh1qvVOGW4jBP7vZcDnjmL4P4wip+Djo8NWu9mVTVvmGX0MiPyLcxVPCl9UgENIXGM+pl8H/9PHtmkEYMcpuwyJTAOEdsKXi7vpou48X+XwvHSkglUuLf6ipSoP35KFVREUIIB2xeWIdWbtp00I4Ns689Uwl0szCeQP4ll5N9goDXH/ML74BtRCFHtaHzei/zMb60TXuWe2HxbpL8MQZR3LwfoeTrRPLZQuf0wRi8Y1TMz2q2ztwL6ixDSfQ1yU/nUBns+DAaCdCJFY7p88TGhLw8uTGCjOqDkjD8pIPBNq7kXGNBP9P+0mGVvUP7JZWv70SiuC3i2vDHfJwxBJTMLy2HRE3s1W+vqMHjL5GBOkN35NNGJWXhGiuBLVO2mF+KI38vdtv8/ZoDNpRo=----ATTACHMENT:----MTA4MDk4OTM5NzUzMDIzNiAxNDk2ODIwNDU0ODQ4NTA3IDk5MTA1ODQzMDk1MDMwNDI=