public static final function cast($value): array {
		if (is_array($value)){
			return $value;
		}

		if (is_object($value) && method_exists($value, 'toArray')){
			return $value->toArray();
		}

		if ($value instanceof \Generator){
			return iterator_to_array($value);
		}

		return [$value];
	}