Syntax for empty dictionary in YAML

前端 未结 2 847
没有蜡笔的小新
没有蜡笔的小新 2021-02-04 22:46

How do I denote an empty dictionary in YAML? I.e. it should be semantically equivalent to the empty json-object {}.

相关标签:
2条回答
  • 2021-02-04 23:27

    Short answer: use {}

    There are two ways to denote mappings (dictionaries) in yaml; flow mappings and block mappings:

    block_mapping:
        name:  foo
        id:    bar
    flow_mapping: { name: foo, id: bar }
    empty_flow_mapping: {}
    

    The flow mapping style is thus suitable for representing empty mappings.

    0 讨论(0)
  • 2021-02-04 23:40

    General technique for answering this type of question, to supplement Betamos’s correct answer: use irb.

    $ irb
    2.2.0 :001 > require 'yaml'
     => true 
    2.2.0 :002 > puts({}.to_yaml)   # original question
    --- {}
     => nil 
    2.2.0 :003 > puts({ mixed_types: [{}, "string", :symbol, {symbol: "value"}, nil, 3] }.to_yaml)
    ---
    :mixed_types:
    - {}
    - string
    - :symbol
    - :symbol: value
    - 
    - 3
     => nil
    

    I use this whenever I’m unsure how to encode something.

    0 讨论(0)
提交回复
热议问题