Jak utworzyć pustą tablicę w YAML?

190
array_with_three_elements:
- 1
- 2
- 3

empty_array:

Czy jest jakiś sposób, aby określić, że empty_array: jest tablicą bez elementów, na przykład with []? Kiedy ładuję go do ruby, chcę wiedzieć, że to tablica.

Dzięki

Julian Mann
źródło
14
próbowałeś użyć []?
Jimmy

Odpowiedzi:

307

Spróbuj użyć [], takich jak:

empty_array: []

W Ruby masz:

x = YAML::load("empty_array: []")
x # => {"empty_array" => []}
maerika
źródło
32
Chciałem tylko dodać, że możesz przejść do irb i wpisać coś w stylu: „wymagają 'yaml'; YAML :: dump ({: hi => []})", aby zobaczyć, jaki powinien być yaml dla obiektu.
Mike A.
20
Chciałbym tylko zauważyć, że JSON jest oficjalnym podzbiorem YAML 1.2 i prawie podzbiorem wcześniejszych wersji. W ten sposób []działa dla pustej sekwencji, ""działa na pusty ciąg i {}działa na puste odwzorowanie.
Daniel H
2
@DanielH Pamiętaj, że parsery YAML mogą nie obsługiwać podziałów linii wewnątrz struktur []lub {}struktur, co jest główną niezgodnością z JSON (kopiuj i wklej z Wikipedii ) Na zdrowie
olibre
2
Wiele parserów jest nadal w wersji YAML 1.1; o tym chyba mówi Wikipedia. Istotą wydania 1.2 jest uczynienie JSON oficjalnym podzbiorem.
Daniel H
co powiesz na strictyaml?
Xaser