# here is a full test for the library!
# let's start from empty string value :)
test: ""

# key contains space is ok
the key: the value

# we have 10 types natively supported
# string/multiline/text are take as string
types:
  # bool
  bool: true
  # byte
  byte: -1
  # short
  short: 3200
  # int
  int: -2100000000
  # long
  long: 1234321425321
  # float
  float: 3.1415926
  # double
  double: 123413.4567654567654
  # char
  char: c
  # string
  string: this is a string
  # multiline string is one string joined by space (" ")
  multiline:
    # value is also commentable 1
    line 1
    line 2
    # value is also commentable 2 (will move up)
    line 3
    # value is also commentable 3 (will move up)
  angle: >
    Hello, this is
    a very important message
    with new lines folded into spaces
  # text string is one kept literal originally (but cannot comment the value)
  text: |
    def func(x) do
      # do something
      print x = x * 2
    end
  # datetime
  datetime: 1997-01-06T23:12:10Z

# list is a hetergeneous vector structure
list:
  # item is text
  - Text
  # item is hash
  - key: val
  # item is list
  - - ListOfList

# hash is a named-tuple structure
hash:
  # value is text
  name1:
    Text
  # value is hash
  name2:
    key: val
  # value is list
  name3:
    - HashOfList

# let's make these structures deep :)
# <hs>
hash1:
  # <hs.ls>
  -
    # <hs.ls.hs>
    hash2:
      # <hs.ls.hs.ls>
      -
        # <hs.ls.hs.ls.Text>
        the treasure
        is deep
