Assessment: Introduce attributes to represent schemata
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 18/100
Línea de trabajo
Read the original proposal and the 14-comment thread first; the discussion has not settled whether #[StringSchema]-style attributes belong on the class or on its properties. The payload names AutoDiscoveringSchema::analyze() and validate() as the intended entry points, but no files are given. Done means a maintainer-agreed design, not a patch.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Originally posted on discuss.neos.io:
[Bernhard]
Would it be possible to expose the schema classes as attributes? Then I could do something similar tofinal readonly class SomeDto { public function __construct( #[StringSchema(pattern: 'someregex')] public string $value, ) { AutoDiscoveringSchema::validate(self::class, func_get_args()); } }
Final version would probably look something like this instead:
[Bastian]
I’d vote to add them on the class not its properties#[StringSchema(pattern: 'someRegex')] final readonly class StarshipRegistryNumber { public function __construct( public string $value, ) { AutoDiscoveringSchema::analyze(self::class)->validate($value)->throwIfInvalid(); } }
- Lenguaje dominante
- PHP
- Estrellas
- 0
- Forks
- 0
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Issues similares
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
EasyCorp/EasyAdminBundle#7875 ·
Los mantenedores suelen responder en 2 días
-
[Sync EN] PDOException::getCode(): document the int|string return typePosiblemente ocupada @lacatoire la tomó hoy. Abiertosync-en
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
sync-en
Dificultad 1/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
coollabsio/coolify#12299 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día