Joli\Jane\Guesser\JsonSchema\ObjectGuesser::guessType PHP Method

guessType() public method

public guessType ( $object, $name, $classes )
    public function guessType($object, $name, $classes)
    {
        $discriminants = [];
        $required = $object->getRequired() ?: [];
        foreach ($object->getProperties() as $key => $property) {
            if (!in_array($key, $required)) {
                continue;
            }
            if ($property instanceof Reference) {
                $property = $this->resolver->resolve($property);
            }
            if ($property->getEnum() !== null) {
                $isSimple = true;
                foreach ($property->getEnum() as $value) {
                    if (is_array($value) || is_object($value)) {
                        $isSimple = false;
                    }
                }
                if ($isSimple) {
                    $discriminants[$key] = $property->getEnum();
                }
            } else {
                $discriminants[$key] = null;
            }
        }
        return new ObjectType($object, $this->naming->getClassName($name), $discriminants);
    }