diff options
Diffstat (limited to 'yaml.html.markdown')
| -rw-r--r-- | yaml.html.markdown | 31 | 
1 files changed, 28 insertions, 3 deletions
| diff --git a/yaml.html.markdown b/yaml.html.markdown index 6e3e2c94..62f08fb9 100644 --- a/yaml.html.markdown +++ b/yaml.html.markdown @@ -3,6 +3,7 @@ language: yaml  filename: learnyaml.yaml  contributors:    - ["Adam Brenecki", "https://github.com/adambrenecki"] +  - ["Suhas SG", "https://github.com/jargnar"]  ---  YAML is a data serialisation language designed to be directly writable and @@ -66,14 +67,19 @@ a_nested_map:  # Maps don't have to have string keys.  0.25: a float key -# Keys can also be multi-line objects, using ? to indicate the start of a key. +# Keys can also be complex, like multi-line objects +# We use ? followed by a space to indicate the start of a complex key.  ? |      This is a key      that has multiple lines  : and this is its value -# YAML also allows collection types in keys, but many programming languages -# will complain. +# YAML also allows mapping between sequences with the complex key syntax +# Some language parsers might complain +# An example +? - Manchester United +  - Real Madrid +: [ 2001-01-01, 2002-02-02 ]  # Sequences (equivalent to lists or arrays) look like this:  a_sequence: @@ -101,12 +107,31 @@ json_seq: [3, 2, 1, "takeoff"]  anchored_content: &anchor_name This string will appear as the value of two keys.  other_anchor: *anchor_name +# 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 + +# foo and bar would also have name: Everyone has same name +  # YAML also has tags, which you can use to explicitly declare types.  explicit_string: !!str 0.5  # Some parsers implement language specific tags, like this one for Python's  # complex number type.  python_complex_number: !!python/complex 1+2j +# We can also use yaml complex keys with language specific tags +? !!python/tuple [5, 7] +: Fifty Seven +# Would be {(5, 7): 'Fifty Seven'} in python +  ####################  # EXTRA YAML TYPES #  #################### | 
