Toán tử <<:
trong YAML có thể sử dụng được để nhập nội dung của một ánh xạ này sang một ánh xạ khác, tương tự như toán tử ký tự ghép đôi **
bằng Python hoặc ...
toán tử hủy đối tượng trong JavaScript. Ví dụ,Cú pháp << (double left arrow) trong YAML được gọi là gì, và nó được xác định ở đâu?
foo:
a: b
<<:
c: d
e: f
tương đương với
foo:
a: b
c: d
e: f
này rất hữu ích khi được sử dụng cùng với node anchors bao gồm một số thuộc tính mặc định phổ biến ở nhiều đối tượng, như minh họa trong, ví dụ, Learn YAML in Y minutes hướng dẫn:
# 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
Tuy nhiên, tôi nhầm lẫn về nơi cú pháp này đến từ đâu hoặc tại sao nó hoạt động. CTRL + F nhập YAML spec cho <<
cho biết rằng nó không xuất hiện ở bất kỳ đâu trong thông số kỹ thuật. Tuy nhiên, nó được hỗ trợ bởi, ít nhất, PyYAML và http://yaml-online-parser.appspot.com/.
Cú pháp này là gì và cách nó dường như không xuất hiện trong thông số kỹ thuật?
Nó không phải là toán tử '<<:', nó là một khóa cụ thể '<<' trong cặp giá trị khóa. ':' Là dấu tách khóa-giá trị bình thường. – Anthon