public static function fetch($object, $property, $default = null)
    {
        if (is_null($object)) {
            return self::value($default);
        }

        return isset($object->$property) ? $object->$property : self::value($default);
    }