poner - ¿Cómo se llama la sintaxis<<(doble flecha izquierda) en YAML, y dónde se especificó?
yaml tutorial español (1)
Se denomina tipo independiente del lenguaje de clave de combinación para la versión 1.1 de YAML. y especificó here
Es algo que los analizadores pueden admitir opcionalmente, es esencialmente una interpretación del par clave-valor con la clave especial <<
, donde el valor es una asignación (generalmente se indica mediante un alias como en la especificación, y aunque eso no es así) Parece que se requiere, tiene poco sentido no usar un alias) o una lista de asignaciones (es decir, alias de asignaciones), y se interpreta de una manera especial.
El operador <<:
en YAML se puede usar para importar el contenido de una asignación a otra, de manera similar al **
operador de doble splat en Python o ...
operador de desestructuración de objetos en JavaScript. Por ejemplo,
foo:
a: b
<<:
c: d
e: f
es equivalente a
foo:
a: b
c: d
e: f
Esto es útil cuando se usa junto con anclajes de nodo para incluir algunas propiedades predeterminadas comunes en muchos objetos, como se ilustra, por ejemplo, en el tutorial Aprender YAML en Y minutos :
# Anchors can be used to duplicate/inherit properties base: &base name: Everyone has same name foo: &foo <<: *base age: 10 bar: &bar <<: *base age: 20
Sin embargo, estoy confundido sobre de dónde viene esta sintaxis o por qué funciona. CTRL + F ing. La especificación YAML para <<
revela que no aparece en ninguna parte de la especificación. Sin embargo, es compatible con PyYAML y http://yaml-online-parser.appspot.com/ .
¿Cuál es esta sintaxis y por qué no aparece en la especificación?