test: use spec examples
This commit is contained in:
parent
6347d6367c
commit
17f636215d
29
examples/invoice.yaml
Normal file
29
examples/invoice.yaml
Normal file
|
@ -0,0 +1,29 @@
|
|||
--- !<tag:clarkevans.com,2002:invoice>
|
||||
invoice: 34843
|
||||
date : 2001-01-23
|
||||
bill-to: &id001
|
||||
given : Chris
|
||||
family : Dumars
|
||||
address:
|
||||
lines: |
|
||||
458 Walkman Dr.
|
||||
Suite #292
|
||||
city : Royal Oak
|
||||
state : MI
|
||||
postal : 48046
|
||||
ship-to: *id001
|
||||
product:
|
||||
- sku : BL394D
|
||||
quantity : 4
|
||||
description : Basketball
|
||||
price : 450.00
|
||||
- sku : BL4438H
|
||||
quantity : 1
|
||||
description : Super Hoop
|
||||
price : 2392.00
|
||||
tax : 251.42
|
||||
total: 4443.52
|
||||
comments:
|
||||
Late afternoon is best.
|
||||
Backup contact is Nancy
|
||||
Billsmer @ 338-4338.
|
29
examples/log-file.yaml
Normal file
29
examples/log-file.yaml
Normal file
|
@ -0,0 +1,29 @@
|
|||
---
|
||||
Time: 2001-11-23 15:01:42 -5
|
||||
User: ed
|
||||
Warning:
|
||||
This is an error message
|
||||
for the log file
|
||||
---
|
||||
Time: 2001-11-23 15:02:31 -5
|
||||
User: ed
|
||||
Warning:
|
||||
A slightly different error
|
||||
message.
|
||||
---
|
||||
Date: 2001-11-23 15:03:17 -5
|
||||
User: ed
|
||||
Fatal:
|
||||
Unknown variable "bar"
|
||||
Stack:
|
||||
- file: TopClass.py
|
||||
line: 23
|
||||
code: |
|
||||
x = MoreObject("345\n")
|
||||
- file: MoreClass.py
|
||||
line: 58
|
||||
code: |-
|
||||
foo = bar
|
||||
|
||||
|
||||
|
1246
test/corpus/02_preview.txt
Normal file
1246
test/corpus/02_preview.txt
Normal file
File diff suppressed because it is too large
Load diff
326
test/corpus/05_characters.txt
Normal file
326
test/corpus/05_characters.txt
Normal file
|
@ -0,0 +1,326 @@
|
|||
================================================================================
|
||||
Byte Order Mark
|
||||
================================================================================
|
||||
# Comment only.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(comment))
|
||||
|
||||
================================================================================
|
||||
Invalid Byte Order Mark
|
||||
:error
|
||||
================================================================================
|
||||
- Invalid use of BOM
|
||||
|
||||
- Inside a document.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
================================================================================
|
||||
Block Structure Indicators
|
||||
================================================================================
|
||||
sequence:
|
||||
- one
|
||||
- two
|
||||
mapping:
|
||||
? sky
|
||||
: blue
|
||||
sea : green
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))))))
|
||||
|
||||
================================================================================
|
||||
Flow Collection Indicators
|
||||
================================================================================
|
||||
sequence: [ one, two, ]
|
||||
mapping: { sky: blue, sea: green }
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(flow_mapping
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))))))
|
||||
|
||||
================================================================================
|
||||
Comment Indicator
|
||||
================================================================================
|
||||
# Comment only.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(comment))
|
||||
|
||||
================================================================================
|
||||
Node Property Indicators
|
||||
================================================================================
|
||||
anchored: !local &anchor value
|
||||
alias: *anchor
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)
|
||||
(anchor
|
||||
(anchor_name))
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(alias
|
||||
(alias_name))))))))
|
||||
|
||||
================================================================================
|
||||
Block Scalar Indicators
|
||||
================================================================================
|
||||
literal: |
|
||||
some
|
||||
text
|
||||
folded: >
|
||||
some
|
||||
text
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_scalar)))))))
|
||||
|
||||
================================================================================
|
||||
Quoted Scalar Indicators
|
||||
================================================================================
|
||||
single: 'text'
|
||||
double: "text"
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(single_quote_scalar)))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(double_quote_scalar)))))))
|
||||
|
||||
================================================================================
|
||||
Directive Indicator
|
||||
================================================================================
|
||||
%YAML 1.2
|
||||
--- text
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(yaml_directive
|
||||
(yaml_version))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))
|
||||
|
||||
================================================================================
|
||||
Invalid use of Reserved Indicators
|
||||
:error
|
||||
================================================================================
|
||||
commercial-at: @text
|
||||
grave-accent: `text
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
================================================================================
|
||||
Line Break Characters
|
||||
================================================================================
|
||||
|
|
||||
Line break (no glyph)
|
||||
Line break (glyphed)
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_scalar))))
|
||||
|
||||
================================================================================
|
||||
Tabs and Spaces
|
||||
================================================================================
|
||||
# Tabs and spaces
|
||||
quoted: "Quoted "
|
||||
block: |
|
||||
void main() {
|
||||
printf("Hello, world!\n");
|
||||
}
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(comment)
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(double_quote_scalar)))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_scalar)))))))
|
||||
|
||||
================================================================================
|
||||
Escaped Characters
|
||||
================================================================================
|
||||
"Fun with \\
|
||||
\" \a \b \e \f
|
||||
\n \r \t \v \0
|
||||
\ \_ \N \L \P
|
||||
\x41 \u0041 \U00000041"
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(double_quote_scalar
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)
|
||||
(escape_sequence)))))
|
||||
|
||||
================================================================================
|
||||
Invalid Escaped Characters
|
||||
:error
|
||||
================================================================================
|
||||
Bad escapes:
|
||||
"\c
|
||||
\xq-"
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
763
test/corpus/06_structures.txt
Normal file
763
test/corpus/06_structures.txt
Normal file
|
@ -0,0 +1,763 @@
|
|||
============================================================================||||
|
||||
Indentation Spaces
|
||||
============================================================================||||
|
||||
# Leading comment line spaces are
|
||||
# neither content nor indentation.
|
||||
|
||||
Not indented:
|
||||
By one space: |
|
||||
By four
|
||||
spaces
|
||||
Flow style: [ # Leading spaces
|
||||
By two, # in flow style
|
||||
Also by two, # are neither
|
||||
Still by two # content nor
|
||||
] # indentation.
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(comment)
|
||||
(comment)
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(comment)
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(comment)
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(comment)
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(comment))))
|
||||
(comment))))))))
|
||||
|
||||
============================================================================||||
|
||||
Indentation Indicators
|
||||
============================================================================||||
|
||||
? a
|
||||
: - b
|
||||
- - c
|
||||
- d
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))))))))
|
||||
|
||||
============================================================================||||
|
||||
Separation Spaces
|
||||
============================================================================||||
|
||||
- foo: bar
|
||||
- - baz
|
||||
- baz
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))))))
|
||||
|
||||
============================================================================||||
|
||||
Line Prefixes
|
||||
============================================================================||||
|
||||
plain: text
|
||||
lines
|
||||
quoted: "text
|
||||
lines"
|
||||
block: |
|
||||
text
|
||||
lines
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(double_quote_scalar)))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_scalar)))))))
|
||||
|
||||
============================================================================||||
|
||||
Empty Lines
|
||||
============================================================================||||
|
||||
Folding:
|
||||
"Empty line
|
||||
|
||||
as a line feed"
|
||||
Chomping: |
|
||||
Clipped empty lines
|
||||
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(double_quote_scalar)))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_scalar)))))))
|
||||
|
||||
============================================================================||||
|
||||
Line Folding
|
||||
============================================================================||||
|
||||
>-
|
||||
trimmed
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
as
|
||||
|
||||
space
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_scalar))))
|
||||
|
||||
============================================================================||||
|
||||
Block Folding
|
||||
============================================================================||||
|
||||
>
|
||||
foo
|
||||
|
||||
|
||||
|
||||
bar
|
||||
|
||||
|
||||
|
||||
baz
|
||||
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_scalar))))
|
||||
|
||||
============================================================================||||
|
||||
Flow Folding
|
||||
============================================================================||||
|
||||
"
|
||||
|
||||
foo
|
||||
|
||||
|
||||
|
||||
bar
|
||||
|
||||
|
||||
|
||||
baz
|
||||
|
||||
"
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(double_quote_scalar))))
|
||||
|
||||
============================================================================||||
|
||||
Separated Comment
|
||||
============================================================================||||
|
||||
key: # Comment
|
||||
|
||||
value
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(comment)
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))
|
||||
|
||||
============================================================================||||
|
||||
Comment Lines
|
||||
============================================================================||||
|
||||
# Comment
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(comment))
|
||||
|
||||
============================================================================||||
|
||||
Multi-Line Comments
|
||||
============================================================================||||
|
||||
key: # Comment
|
||||
|
||||
# lines
|
||||
|
||||
value
|
||||
|
||||
|
||||
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(comment)
|
||||
(comment)
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))
|
||||
|
||||
============================================================================||||
|
||||
Separation Spaces
|
||||
============================================================================||||
|
||||
{ first: Sammy, last: Sosa }:
|
||||
|
||||
# Statistics:
|
||||
hr: # Home runs
|
||||
65
|
||||
avg: # Average
|
||||
0.278
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(flow_mapping
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))
|
||||
(comment)
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(comment)
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(comment)
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))))))))))
|
||||
|
||||
============================================================================||||
|
||||
Reserved Directives
|
||||
============================================================================||||
|
||||
%FOO bar baz # Should be ignored
|
||||
# with a warning.
|
||||
--- "foo"
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(reserved_directive
|
||||
(directive_name)
|
||||
(directive_parameter)
|
||||
(directive_parameter))
|
||||
(comment)
|
||||
(comment)
|
||||
(flow_node
|
||||
(double_quote_scalar))))
|
||||
|
||||
============================================================================||||
|
||||
“YAML” directive
|
||||
============================================================================||||
|
||||
%YAML 1.3 # Attempt parsing
|
||||
# with a warning
|
||||
---
|
||||
"foo"
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(yaml_directive
|
||||
(yaml_version))
|
||||
(comment)
|
||||
(comment)
|
||||
(flow_node
|
||||
(double_quote_scalar))))
|
||||
|
||||
============================================================================||||
|
||||
Invalid Repeated YAML directive
|
||||
:error
|
||||
============================================================================||||
|
||||
%YAML 1.2
|
||||
%YAML 1.1
|
||||
foo
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
============================================================================||||
|
||||
“TAG” directive
|
||||
============================================================================||||
|
||||
%TAG !yaml! tag:yaml.org,2002:
|
||||
---
|
||||
!yaml!str "foo"
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(tag_directive
|
||||
(tag_handle)
|
||||
(tag_prefix))
|
||||
(flow_node
|
||||
(tag)
|
||||
(double_quote_scalar))))
|
||||
|
||||
============================================================================||||
|
||||
Invalid Repeated TAG directive
|
||||
:error
|
||||
============================================================================||||
|
||||
%TAG ! !foo
|
||||
%TAG ! !foo
|
||||
bar
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
============================================================================||||
|
||||
Primary Tag Handle
|
||||
============================================================================||||
|
||||
# Private
|
||||
!foo "bar"
|
||||
...
|
||||
# Global
|
||||
%TAG ! tag:example.com,2000:app/
|
||||
---
|
||||
!foo "bar"
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(comment)
|
||||
(document
|
||||
(flow_node
|
||||
(tag)
|
||||
(double_quote_scalar)))
|
||||
(comment)
|
||||
(document
|
||||
(tag_directive
|
||||
(tag_handle)
|
||||
(tag_prefix))
|
||||
(flow_node
|
||||
(tag)
|
||||
(double_quote_scalar))))
|
||||
|
||||
============================================================================||||
|
||||
Secondary Tag Handle
|
||||
============================================================================||||
|
||||
%TAG !! tag:example.com,2000:app/
|
||||
---
|
||||
!!int 1 - 3 # Interval, not integer
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(tag_directive
|
||||
(tag_handle)
|
||||
(tag_prefix))
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(comment))
|
||||
|
||||
============================================================================||||
|
||||
Tag Handles
|
||||
============================================================================||||
|
||||
%TAG !e! tag:example.com,2000:app/
|
||||
---
|
||||
!e!foo "bar"
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(tag_directive
|
||||
(tag_handle)
|
||||
(tag_prefix))
|
||||
(flow_node
|
||||
(tag)
|
||||
(double_quote_scalar))))
|
||||
|
||||
============================================================================||||
|
||||
Local Tag Prefix
|
||||
============================================================================||||
|
||||
%TAG !m! !my-
|
||||
--- # Bulb here
|
||||
!m!light fluorescent
|
||||
...
|
||||
%TAG !m! !my-
|
||||
--- # Color here
|
||||
!m!light green
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(tag_directive
|
||||
(tag_handle)
|
||||
(tag_prefix))
|
||||
(comment)
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(document
|
||||
(tag_directive
|
||||
(tag_handle)
|
||||
(tag_prefix))
|
||||
(comment)
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(string_scalar)))))
|
||||
|
||||
============================================================================||||
|
||||
Global Tag Prefix
|
||||
============================================================================||||
|
||||
%TAG !e! tag:example.com,2000:app/
|
||||
---
|
||||
- !e!foo "bar"
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(tag_directive
|
||||
(tag_handle)
|
||||
(tag_prefix))
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(tag)
|
||||
(double_quote_scalar)))))))
|
||||
|
||||
============================================================================||||
|
||||
Node Properties
|
||||
============================================================================||||
|
||||
!!str &a1 "foo":
|
||||
!!str bar
|
||||
&a2 baz : *a1
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(tag)
|
||||
(anchor
|
||||
(anchor_name))
|
||||
(double_quote_scalar))
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(anchor
|
||||
(anchor_name))
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(alias
|
||||
(alias_name))))))))
|
||||
|
||||
============================================================================||||
|
||||
Verbatim Tags
|
||||
============================================================================||||
|
||||
!<tag:yaml.org,2002:str> foo :
|
||||
!<!bar> baz
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(string_scalar))))))))
|
||||
|
||||
============================================================================||||
|
||||
Invalid Verbatim Tags
|
||||
============================================================================||||
|
||||
- !<!> foo
|
||||
- !<$:?> bar
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(string_scalar))))))))
|
||||
|
||||
============================================================================||||
|
||||
Tag Shorthands
|
||||
============================================================================||||
|
||||
%TAG !e! tag:example.com,2000:app/
|
||||
---
|
||||
- !local foo
|
||||
- !!str bar
|
||||
- !e!tag%21 baz
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(tag_directive
|
||||
(tag_handle)
|
||||
(tag_prefix))
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(string_scalar))))))))
|
||||
|
||||
============================================================================||||
|
||||
Invalid Tag Shorthands
|
||||
============================================================================||||
|
||||
%TAG !e! tag:example,2000:app/
|
||||
---
|
||||
- !e! foo
|
||||
- !h!bar baz
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(ERROR
|
||||
(tag_directive
|
||||
(tag_handle)
|
||||
(tag_prefix))
|
||||
(block_sequence_item))
|
||||
|
||||
============================================================================||||
|
||||
Non-Specific Tags
|
||||
============================================================================||||
|
||||
# Assuming conventional resolution:
|
||||
- "12"
|
||||
- 12
|
||||
- ! 12
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(comment)
|
||||
(document
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(double_quote_scalar)))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(integer_scalar))))))))
|
||||
|
||||
============================================================================||||
|
||||
Node Anchors
|
||||
============================================================================||||
|
||||
First occurrence: &anchor Value
|
||||
Second occurrence: *anchor
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(anchor
|
||||
(anchor_name))
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(alias
|
||||
(alias_name))))))))
|
729
test/corpus/07_flows.txt
Normal file
729
test/corpus/07_flows.txt
Normal file
|
@ -0,0 +1,729 @@
|
|||
================================================================================
|
||||
Alias Nodes
|
||||
================================================================================
|
||||
First occurrence: &anchor Foo
|
||||
Second occurrence: *anchor
|
||||
Override anchor: &anchor Bar
|
||||
Reuse anchor: *anchor
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(anchor
|
||||
(anchor_name))
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(alias
|
||||
(alias_name))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(anchor
|
||||
(anchor_name))
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(alias
|
||||
(alias_name))))))))
|
||||
|
||||
================================================================================
|
||||
Empty Content
|
||||
================================================================================
|
||||
{
|
||||
foo : !!str,
|
||||
!!str : bar,
|
||||
}
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(flow_mapping
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)))
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(tag))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))
|
||||
|
||||
================================================================================
|
||||
Completely Empty Flow Nodes
|
||||
================================================================================
|
||||
{
|
||||
? foo :,
|
||||
: bar,
|
||||
}
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(flow_mapping
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))
|
||||
|
||||
================================================================================
|
||||
Double Quoted Implicit Keys
|
||||
================================================================================
|
||||
"implicit block key" : [
|
||||
"implicit flow key" : value,
|
||||
]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(double_quote_scalar))
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(double_quote_scalar))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))))))
|
||||
|
||||
================================================================================
|
||||
Double Quoted Line Breaks
|
||||
================================================================================
|
||||
"folded
|
||||
|
||||
to a space,
|
||||
|
||||
|
||||
|
||||
to a line feed, or \
|
||||
|
||||
\ non-content"
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(double_quote_scalar
|
||||
(escape_sequence)
|
||||
(escape_sequence)))))
|
||||
|
||||
================================================================================
|
||||
Double Quoted Lines
|
||||
================================================================================
|
||||
" 1st non-empty
|
||||
|
||||
|
||||
|
||||
2nd non-empty
|
||||
3rd non-empty "
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(double_quote_scalar))))
|
||||
|
||||
================================================================================
|
||||
Single Quoted Characters
|
||||
================================================================================
|
||||
'here''s to "quotes"'
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(single_quote_scalar
|
||||
(escape_sequence)))))
|
||||
|
||||
================================================================================
|
||||
Single Quoted Implicit Keys
|
||||
================================================================================
|
||||
'implicit block key' : [
|
||||
'implicit flow key' : value,
|
||||
]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(single_quote_scalar))
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(single_quote_scalar))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))))))
|
||||
|
||||
================================================================================
|
||||
Single Quoted Lines
|
||||
================================================================================
|
||||
' 1st non-empty
|
||||
|
||||
|
||||
|
||||
2nd non-empty
|
||||
3rd non-empty '
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(single_quote_scalar))))
|
||||
|
||||
================================================================================
|
||||
Plain Characters
|
||||
================================================================================
|
||||
# Outside flow collection:
|
||||
- ::vector
|
||||
- ": - ()"
|
||||
- Up, up, and away!
|
||||
- -123
|
||||
- http://example.com/foo#bar
|
||||
# Inside flow collection:
|
||||
- [ ::vector,
|
||||
": - ()",
|
||||
"Up, up and away!",
|
||||
-123,
|
||||
http://example.com/foo#bar ]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(comment)
|
||||
(document
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(double_quote_scalar)))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(comment)
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(double_quote_scalar))
|
||||
(flow_node
|
||||
(double_quote_scalar))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))))
|
||||
|
||||
================================================================================
|
||||
Plain Implicit Keys
|
||||
================================================================================
|
||||
implicit block key : [
|
||||
implicit flow key : value,
|
||||
]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))))))
|
||||
|
||||
================================================================================
|
||||
Plain Lines
|
||||
================================================================================
|
||||
1st non-empty
|
||||
|
||||
|
||||
|
||||
2nd non-empty
|
||||
3rd non-empty
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))
|
||||
|
||||
================================================================================
|
||||
Flow Sequence
|
||||
================================================================================
|
||||
- [ one, two, ]
|
||||
- [three ,four]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))))
|
||||
|
||||
================================================================================
|
||||
Flow Sequence Entries
|
||||
================================================================================
|
||||
[
|
||||
"double
|
||||
quoted", 'single
|
||||
quoted',
|
||||
plain
|
||||
text, [ nested ],
|
||||
single: pair,
|
||||
]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(double_quote_scalar))
|
||||
(flow_node
|
||||
(single_quote_scalar))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))
|
||||
|
||||
================================================================================
|
||||
Flow Mappings
|
||||
================================================================================
|
||||
- { one : two , three: four , }
|
||||
- {five: six,seven : eight}
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(flow_mapping
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(flow_mapping
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))))))
|
||||
|
||||
================================================================================
|
||||
Flow Mapping Entries
|
||||
================================================================================
|
||||
{
|
||||
? explicit: entry,
|
||||
implicit: entry,
|
||||
?
|
||||
}
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(flow_mapping
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(flow_pair)))))
|
||||
|
||||
================================================================================
|
||||
Flow Mapping Separate Values
|
||||
================================================================================
|
||||
{
|
||||
unquoted : "separate",
|
||||
http://foo.com,
|
||||
omitted value:,
|
||||
: omitted key,
|
||||
}
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(flow_mapping
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(double_quote_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))
|
||||
|
||||
================================================================================
|
||||
Flow Mapping Adjacent Values
|
||||
================================================================================
|
||||
{
|
||||
"adjacent":value,
|
||||
"readable": value,
|
||||
"empty":
|
||||
}
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(flow_mapping
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(double_quote_scalar))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(double_quote_scalar))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(double_quote_scalar)))))))
|
||||
|
||||
================================================================================
|
||||
Single Pair Flow Mappings
|
||||
================================================================================
|
||||
[
|
||||
foo: bar
|
||||
]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))
|
||||
|
||||
================================================================================
|
||||
Single Pair Explicit Entry
|
||||
================================================================================
|
||||
[
|
||||
? foo
|
||||
bar : baz
|
||||
]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))
|
||||
|
||||
================================================================================
|
||||
Single Pair Implicit Entries
|
||||
================================================================================
|
||||
- [ YAML : separate ]
|
||||
- [ : empty key entry ]
|
||||
- [ {JSON: like}:adjacent ]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(flow_mapping
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))))))
|
||||
|
||||
================================================================================
|
||||
Invalid Implicit Keys
|
||||
================================================================================
|
||||
[ foo
|
||||
bar: invalid,
|
||||
"foo...>1K characters...bar": invalid ]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(double_quote_scalar))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))
|
||||
|
||||
================================================================================
|
||||
Flow Content
|
||||
================================================================================
|
||||
- [ a, b ]
|
||||
- { a: b }
|
||||
- "a"
|
||||
- 'b'
|
||||
- c
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(flow_mapping
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(double_quote_scalar)))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(single_quote_scalar)))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))
|
||||
|
||||
================================================================================
|
||||
Flow Nodes
|
||||
================================================================================
|
||||
- !!str "a"
|
||||
- 'b'
|
||||
- &anchor "c"
|
||||
- *anchor
|
||||
- !!str
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(tag)
|
||||
(double_quote_scalar)))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(single_quote_scalar)))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(anchor
|
||||
(anchor_name))
|
||||
(double_quote_scalar)))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(alias
|
||||
(alias_name))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(tag)))))))
|
770
test/corpus/08_blocks.txt
Normal file
770
test/corpus/08_blocks.txt
Normal file
|
@ -0,0 +1,770 @@
|
|||
================================================================================
|
||||
Block Scalar Header
|
||||
================================================================================
|
||||
- | # Empty header
|
||||
|
||||
literal
|
||||
- >1 # Indentation indicator
|
||||
|
||||
folded
|
||||
- |+ # Chomping indicator
|
||||
|
||||
keep
|
||||
|
||||
- >1- # Both indicators
|
||||
|
||||
strip
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_scalar
|
||||
(comment))))
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_scalar
|
||||
(comment))))
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_scalar
|
||||
(comment))))
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_scalar
|
||||
(comment))))))))
|
||||
|
||||
================================================================================
|
||||
Block Indentation Indicator
|
||||
================================================================================
|
||||
- |
|
||||
detected
|
||||
- >
|
||||
|
||||
|
||||
# detected
|
||||
- |1
|
||||
explicit
|
||||
- >
|
||||
|
||||
detected
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_scalar)))))))
|
||||
|
||||
================================================================================
|
||||
Invalid Block Scalar Indentation Indicators
|
||||
:error
|
||||
================================================================================
|
||||
- |
|
||||
|
||||
text
|
||||
- >
|
||||
text
|
||||
text
|
||||
- |2
|
||||
text
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
================================================================================
|
||||
Chomping Final Line Break
|
||||
================================================================================
|
||||
strip: |-
|
||||
text
|
||||
|
||||
clip: |
|
||||
text
|
||||
|
||||
keep: |+
|
||||
text
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_scalar)))))))
|
||||
|
||||
================================================================================
|
||||
Chomping Trailing Lines
|
||||
================================================================================
|
||||
# Strip
|
||||
# Comments:
|
||||
strip: |-
|
||||
# text
|
||||
|
||||
⇓
|
||||
# Clip
|
||||
# comments:
|
||||
|
||||
|
||||
clip: |
|
||||
# text
|
||||
|
||||
|
||||
|
||||
# Keep
|
||||
# comments:
|
||||
|
||||
|
||||
keep: |+
|
||||
# text
|
||||
|
||||
|
||||
|
||||
# Trail
|
||||
# comments.
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(comment)
|
||||
(comment)
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(comment)
|
||||
(comment)
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(comment)
|
||||
(comment)
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(comment)
|
||||
(comment)))))
|
||||
|
||||
================================================================================
|
||||
Empty Scalar Chomping
|
||||
================================================================================
|
||||
strip: >-
|
||||
|
||||
|
||||
clip: >
|
||||
|
||||
|
||||
keep: |+
|
||||
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_scalar)))))))
|
||||
|
||||
================================================================================
|
||||
Literal Scalar
|
||||
================================================================================
|
||||
|
|
||||
|
||||
literal
|
||||
|
||||
text
|
||||
|
||||
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_scalar))))
|
||||
|
||||
================================================================================
|
||||
Literal Content
|
||||
================================================================================
|
||||
|
|
||||
|
||||
|
||||
literal
|
||||
|
||||
|
||||
|
||||
|
||||
text
|
||||
|
||||
|
||||
|
||||
# Comment
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(comment))
|
||||
|
||||
================================================================================
|
||||
Folded Scalar
|
||||
================================================================================
|
||||
>
|
||||
|
||||
folded
|
||||
|
||||
text
|
||||
|
||||
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_scalar))))
|
||||
|
||||
================================================================================
|
||||
Folded Lines
|
||||
================================================================================
|
||||
>
|
||||
|
||||
folded
|
||||
|
||||
line
|
||||
|
||||
|
||||
|
||||
next
|
||||
line
|
||||
|
||||
* bullet
|
||||
|
||||
* list
|
||||
* lines
|
||||
|
||||
last
|
||||
|
||||
line
|
||||
|
||||
|
||||
# Comment
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(comment))
|
||||
|
||||
================================================================================
|
||||
More Indented Lines
|
||||
================================================================================
|
||||
>
|
||||
|
||||
folded
|
||||
line
|
||||
|
||||
next
|
||||
line
|
||||
* bullet
|
||||
|
||||
|
||||
|
||||
* list
|
||||
|
||||
* lines
|
||||
|
||||
|
||||
last
|
||||
line
|
||||
|
||||
# Comment
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(comment))
|
||||
|
||||
================================================================================
|
||||
Empty Separation Lines
|
||||
================================================================================
|
||||
>
|
||||
|
||||
|
||||
folded
|
||||
line
|
||||
|
||||
|
||||
|
||||
next
|
||||
line
|
||||
|
||||
* bullet
|
||||
|
||||
* list
|
||||
* line
|
||||
|
||||
|
||||
|
||||
last
|
||||
line
|
||||
|
||||
# Comment
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(comment))
|
||||
|
||||
================================================================================
|
||||
Final Empty Lines
|
||||
================================================================================
|
||||
>
|
||||
folded
|
||||
line
|
||||
|
||||
next
|
||||
line
|
||||
* bullet
|
||||
|
||||
* list
|
||||
* line
|
||||
|
||||
last
|
||||
line
|
||||
|
||||
|
||||
|
||||
# Comment
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(comment))
|
||||
|
||||
================================================================================
|
||||
Block Sequence
|
||||
================================================================================
|
||||
block sequence:
|
||||
- one
|
||||
|
||||
- two : three
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))))))))
|
||||
|
||||
================================================================================
|
||||
Block Sequence Entry Types
|
||||
================================================================================
|
||||
- # Empty
|
||||
- |
|
||||
block node
|
||||
- - one # Compact
|
||||
- two # sequence
|
||||
- one: two # Compact mapping
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item)
|
||||
(comment)
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(comment)
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(comment))))
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(comment))))))))
|
||||
|
||||
================================================================================
|
||||
Block Mappings
|
||||
================================================================================
|
||||
block mapping:
|
||||
key: value
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))))))
|
||||
|
||||
================================================================================
|
||||
Explicit Block Mapping Entries
|
||||
================================================================================
|
||||
? explicit key # Empty value
|
||||
|
||||
? |
|
||||
block key
|
||||
|
||||
: - one # Explicit compact
|
||||
- two # block value
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(comment)
|
||||
(block_mapping_pair
|
||||
(block_node
|
||||
(block_scalar))
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(comment)
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(comment))))))))
|
||||
|
||||
================================================================================
|
||||
Implicit Block Mapping Entries
|
||||
================================================================================
|
||||
plain key: in-line value
|
||||
: # Both empty
|
||||
"quoted key":
|
||||
- entry
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_mapping_pair)
|
||||
(comment)
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(double_quote_scalar))
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))))))
|
||||
|
||||
================================================================================
|
||||
Compact Block Mappings
|
||||
================================================================================
|
||||
- sun: yellow
|
||||
|
||||
- ? earth: blue
|
||||
|
||||
: moon: white
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))))))))
|
||||
|
||||
================================================================================
|
||||
Block Node Types
|
||||
================================================================================
|
||||
-
|
||||
|
||||
"flow in block"
|
||||
|
||||
- >
|
||||
Block scalar
|
||||
|
||||
- !!map # Block collection
|
||||
foo : bar
|
||||
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(double_quote_scalar)))
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(tag)
|
||||
(comment)
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))))))
|
||||
|
||||
================================================================================
|
||||
Block Scalar Nodes
|
||||
================================================================================
|
||||
literal: |2
|
||||
value
|
||||
folded:
|
||||
|
||||
!foo
|
||||
>1
|
||||
value
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(tag)
|
||||
(block_scalar)))))))
|
||||
|
||||
================================================================================
|
||||
Block Collection Nodes
|
||||
================================================================================
|
||||
sequence: !!seq
|
||||
- entry
|
||||
- !!seq
|
||||
- nested
|
||||
mapping: !!map
|
||||
foo: bar
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(tag)
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_sequence_item
|
||||
(block_node
|
||||
(tag)
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(tag)
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))))))
|
145
test/corpus/09_streams.txt
Normal file
145
test/corpus/09_streams.txt
Normal file
|
@ -0,0 +1,145 @@
|
|||
============================================================================||||
|
||||
Document Prefix
|
||||
============================================================================||||
|
||||
# Comment
|
||||
# lines
|
||||
Document
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(comment)
|
||||
(comment)
|
||||
(document
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))
|
||||
|
||||
============================================================================||||
|
||||
Document Markers
|
||||
============================================================================||||
|
||||
%YAML 1.2
|
||||
---
|
||||
Document
|
||||
... # Suffix
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(yaml_directive
|
||||
(yaml_version))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(comment))
|
||||
|
||||
============================================================================||||
|
||||
Bare Documents
|
||||
============================================================================||||
|
||||
Bare
|
||||
document
|
||||
...
|
||||
# No document
|
||||
...
|
||||
|
|
||||
%!PS-Adobe-2.0 # Not the first line
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(comment)
|
||||
(document)
|
||||
(document
|
||||
(block_node
|
||||
(block_scalar))))
|
||||
|
||||
============================================================================||||
|
||||
Explicit Documents
|
||||
============================================================================||||
|
||||
---
|
||||
{ matches
|
||||
% : 20 }
|
||||
...
|
||||
---
|
||||
# Empty
|
||||
...
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(flow_mapping
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))))))
|
||||
(document
|
||||
(comment)))
|
||||
|
||||
============================================================================||||
|
||||
Directives Documents
|
||||
============================================================================||||
|
||||
%YAML 1.2
|
||||
--- |
|
||||
%!PS-Adobe-2.0
|
||||
...
|
||||
%YAML1.2
|
||||
---
|
||||
# Empty
|
||||
...
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(yaml_directive
|
||||
(yaml_version))
|
||||
(block_node
|
||||
(block_scalar)))
|
||||
(document
|
||||
(reserved_directive
|
||||
(directive_name))
|
||||
(comment)))
|
||||
|
||||
============================================================================||||
|
||||
Stream
|
||||
============================================================================||||
|
||||
Document
|
||||
---
|
||||
# Empty
|
||||
...
|
||||
%YAML 1.2
|
||||
---
|
||||
matches %: 20
|
||||
|
||||
----------------------------------------------------------------------------||||
|
||||
|
||||
(stream
|
||||
(document
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(document
|
||||
(comment))
|
||||
(document
|
||||
(yaml_directive
|
||||
(yaml_version))
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar))))))))
|
||||
|
508
test/corpus/10_schemas.txt
Normal file
508
test/corpus/10_schemas.txt
Normal file
|
@ -0,0 +1,508 @@
|
|||
================================================================================
|
||||
!!map Examples
|
||||
================================================================================
|
||||
Block style: !!map
|
||||
Clark : Evans
|
||||
Ingy : döt Net
|
||||
Oren : Ben-Kiki
|
||||
|
||||
Flow style: !!map { Clark: Evans, Ingy: döt Net, Oren: Ben-Kiki }
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(tag)
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)
|
||||
(flow_mapping
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(flow_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))))))
|
||||
|
||||
================================================================================
|
||||
!!seq Examples
|
||||
================================================================================
|
||||
Block style: !!seq
|
||||
- Clark Evans
|
||||
- Ingy döt Net
|
||||
- Oren Ben-Kiki
|
||||
|
||||
Flow style: !!seq [ Clark Evans, Ingy döt Net, Oren Ben-Kiki ]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(tag)
|
||||
(block_sequence
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_sequence_item
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))))))))
|
||||
|
||||
================================================================================
|
||||
!!str Examples
|
||||
================================================================================
|
||||
Block style: !!str |-
|
||||
String: just a theory.
|
||||
|
||||
Flow style: !!str "String: just a theory."
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(block_node
|
||||
(tag)
|
||||
(block_scalar)))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)
|
||||
(double_quote_scalar)))))))
|
||||
|
||||
================================================================================
|
||||
!!null Examples
|
||||
================================================================================
|
||||
!!null null: value for null key
|
||||
key with null value: !!null null
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(null_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(null_scalar))))))))
|
||||
|
||||
================================================================================
|
||||
!!bool Examples
|
||||
================================================================================
|
||||
YAML is a superset of JSON: !!bool true
|
||||
Pluto is a planet: !!bool false
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(boolean_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(boolean_scalar))))))))
|
||||
|
||||
================================================================================
|
||||
!!int Examples
|
||||
================================================================================
|
||||
negative: !!int -12
|
||||
zero: !!int 0
|
||||
positive: !!int 34
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(integer_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(integer_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(integer_scalar))))))))
|
||||
|
||||
================================================================================
|
||||
!!float Examples
|
||||
================================================================================
|
||||
negative: !!float -1
|
||||
zero: !!float 0
|
||||
positive: !!float 2.3e4
|
||||
infinity: !!float .inf
|
||||
not a number: !!float .nan
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(integer_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(integer_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(float_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(float_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(float_scalar))))))))
|
||||
|
||||
================================================================================
|
||||
JSON Tag Resolution
|
||||
================================================================================
|
||||
A null: null
|
||||
Booleans: [ true, false ]
|
||||
Integers: [ 0, -0, 3, -19 ]
|
||||
Floats: [ 0., -0.0, 12e03, -2E+05 ]
|
||||
Invalid: [ True, Null, 0o7, 0x3A, +12.3 ]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(null_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(boolean_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(boolean_scalar))))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar))))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar))))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(boolean_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(null_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar))))))))))
|
||||
|
||||
================================================================================
|
||||
Core Tag Resolution
|
||||
================================================================================
|
||||
A null: null
|
||||
Also a null: # Empty
|
||||
Not a null: ""
|
||||
Booleans: [ true, True, false, FALSE ]
|
||||
Integers: [ 0, 0o7, 0x3A, -19 ]
|
||||
Floats: [ 0., -0.0, .5, +12e03, -2E+05 ]
|
||||
Also floats: [ .inf, -.Inf, +.INF, .NAN ]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(null_scalar))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(comment)
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(double_quote_scalar)))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(boolean_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(boolean_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(boolean_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(boolean_scalar))))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar))))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar))))))
|
||||
(block_mapping_pair
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
(flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar))))))))))
|
|
@ -1,354 +0,0 @@
|
|||
================================================================================
|
||||
Example 10.4. !!null Examples
|
||||
================================================================================
|
||||
!!null null: value for null key
|
||||
key with null value: !!null null
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(null_scalar)))
|
||||
value: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(null_scalar))))))))
|
||||
|
||||
================================================================================
|
||||
Example 10.5. !!bool Examples
|
||||
================================================================================
|
||||
YAML is a superset of JSON: !!bool true
|
||||
Pluto is a planet: !!bool false
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(boolean_scalar))))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(boolean_scalar))))))))
|
||||
|
||||
================================================================================
|
||||
Example 10.6. !!int Examples
|
||||
================================================================================
|
||||
negative: !!int -12
|
||||
zero: !!int 0
|
||||
positive: !!int 34
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(integer_scalar))))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(integer_scalar))))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(integer_scalar))))))))
|
||||
|
||||
================================================================================
|
||||
Example 10.7. !!float Examples
|
||||
================================================================================
|
||||
negative: !!float -1
|
||||
zero: !!float 0
|
||||
positive: !!float 2.3e4
|
||||
infinity: !!float .inf
|
||||
not a number: !!float .nan
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(integer_scalar))))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(integer_scalar))))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(float_scalar))))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(float_scalar))))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(tag)
|
||||
(plain_scalar
|
||||
(float_scalar))))))))
|
||||
|
||||
================================================================================
|
||||
Example 10.8. JSON Tag Resolution
|
||||
================================================================================
|
||||
A null: null
|
||||
Booleans: [ true, false ]
|
||||
Integers: [ 0, -0, 3, -19 ]
|
||||
Floats: [ 0., -0.0, 12e03, -2E+05 ]
|
||||
Invalid: [ True, Null, 0o7, 0x3A, +12.3 ]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(plain_scalar
|
||||
(null_scalar))))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(boolean_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(boolean_scalar))))))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar))))))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar))))))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(boolean_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(null_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar))))))))))
|
||||
|
||||
================================================================================
|
||||
Example 10.9. Core Tag Resolution
|
||||
================================================================================
|
||||
A null: null
|
||||
Also a null: # Empty
|
||||
Not a null: ""
|
||||
Booleans: [ true, True, false, FALSE ]
|
||||
Integers: [ 0, 0o7, 0x3A, -19 ]
|
||||
Floats: [ 0., -0.0, .5, +12e03, -2E+05 ]
|
||||
Also floats: [ .inf, -.Inf, +.INF, .NAN ]
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
(stream
|
||||
(document
|
||||
(block_node
|
||||
(block_mapping
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(plain_scalar
|
||||
(null_scalar))))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar))))
|
||||
(comment)
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(double_quote_scalar)))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(boolean_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(boolean_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(boolean_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(boolean_scalar))))))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(integer_scalar))))))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar))))))
|
||||
(block_mapping_pair
|
||||
key: (flow_node
|
||||
(plain_scalar
|
||||
(string_scalar)))
|
||||
value: (flow_node
|
||||
(flow_sequence
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar)))
|
||||
(flow_node
|
||||
(plain_scalar
|
||||
(float_scalar))))))))))
|
9836
test/corpus/spec.txt
9836
test/corpus/spec.txt
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue