| namespace { | |
| const char *ex2_1 = | |
| "- Mark McGwire\n" | |
| "- Sammy Sosa\n" | |
| "- Ken Griffey"; | |
| const char *ex2_2 = | |
| "hr: 65 # Home runs\n" | |
| "avg: 0.278 # Batting average\n" | |
| "rbi: 147 # Runs Batted In"; | |
| const char *ex2_3 = | |
| "american:\n" | |
| "- Boston Red Sox\n" | |
| "- Detroit Tigers\n" | |
| "- New York Yankees\n" | |
| "national:\n" | |
| "- New York Mets\n" | |
| "- Chicago Cubs\n" | |
| "- Atlanta Braves"; | |
| const char *ex2_4 = | |
| "-\n" | |
| " name: Mark McGwire\n" | |
| " hr: 65\n" | |
| " avg: 0.278\n" | |
| "-\n" | |
| " name: Sammy Sosa\n" | |
| " hr: 63\n" | |
| " avg: 0.288"; | |
| const char *ex2_5 = | |
| "- [name , hr, avg ]\n" | |
| "- [Mark McGwire, 65, 0.278]\n" | |
| "- [Sammy Sosa , 63, 0.288]"; | |
| const char *ex2_6 = | |
| "Mark McGwire: {hr: 65, avg: 0.278}\n" | |
| "Sammy Sosa: {\n" | |
| " hr: 63,\n" | |
| " avg: 0.288\n" | |
| " }"; | |
| const char *ex2_7 = | |
| "# Ranking of 1998 home runs\n" | |
| "---\n" | |
| "- Mark McGwire\n" | |
| "- Sammy Sosa\n" | |
| "- Ken Griffey\n" | |
| "\n" | |
| "# Team ranking\n" | |
| "---\n" | |
| "- Chicago Cubs\n" | |
| "- St Louis Cardinals"; | |
| const char *ex2_8 = | |
| "---\n" | |
| "time: 20:03:20\n" | |
| "player: Sammy Sosa\n" | |
| "action: strike (miss)\n" | |
| "...\n" | |
| "---\n" | |
| "time: 20:03:47\n" | |
| "player: Sammy Sosa\n" | |
| "action: grand slam\n" | |
| "..."; | |
| const char *ex2_9 = | |
| "---\n" | |
| "hr: # 1998 hr ranking\n" | |
| " - Mark McGwire\n" | |
| " - Sammy Sosa\n" | |
| "rbi:\n" | |
| " # 1998 rbi ranking\n" | |
| " - Sammy Sosa\n" | |
| " - Ken Griffey"; | |
| const char *ex2_10 = | |
| "---\n" | |
| "hr:\n" | |
| " - Mark McGwire\n" | |
| " # Following node labeled SS\n" | |
| " - &SS Sammy Sosa\n" | |
| "rbi:\n" | |
| " - *SS # Subsequent occurrence\n" | |
| " - Ken Griffey"; | |
| const char *ex2_11 = | |
| "? - Detroit Tigers\n" | |
| " - Chicago cubs\n" | |
| ":\n" | |
| " - 2001-07-23\n" | |
| "\n" | |
| "? [ New York Yankees,\n" | |
| " Atlanta Braves ]\n" | |
| ": [ 2001-07-02, 2001-08-12,\n" | |
| " 2001-08-14 ]"; | |
| const char *ex2_12 = | |
| "---\n" | |
| "# Products purchased\n" | |
| "- item : Super Hoop\n" | |
| " quantity: 1\n" | |
| "- item : Basketball\n" | |
| " quantity: 4\n" | |
| "- item : Big Shoes\n" | |
| " quantity: 1"; | |
| const char *ex2_13 = | |
| "# ASCII Art\n" | |
| "--- |\n" | |
| " \\//||\\/||\n" | |
| " // || ||__"; | |
| const char *ex2_14 = | |
| "--- >\n" | |
| " Mark McGwire's\n" | |
| " year was crippled\n" | |
| " by a knee injury."; | |
| const char *ex2_15 = | |
| ">\n" | |
| " Sammy Sosa completed another\n" | |
| " fine season with great stats.\n" | |
| " \n" | |
| " 63 Home Runs\n" | |
| " 0.288 Batting Average\n" | |
| " \n" | |
| " What a year!"; | |
| const char *ex2_16 = | |
| "name: Mark McGwire\n" | |
| "accomplishment: >\n" | |
| " Mark set a major league\n" | |
| " home run record in 1998.\n" | |
| "stats: |\n" | |
| " 65 Home Runs\n" | |
| " 0.278 Batting Average\n"; | |
| const char *ex2_17 = | |
| "unicode: \"Sosa did fine.\\u263A\"\n" | |
| "control: \"\\b1998\\t1999\\t2000\\n\"\n" | |
| "hex esc: \"\\x0d\\x0a is \\r\\n\"\n" | |
| "\n" | |
| "single: '\"Howdy!\" he cried.'\n" | |
| "quoted: ' # Not a ''comment''.'\n" | |
| "tie-fighter: '|\\-*-/|'"; | |
| const char *ex2_18 = | |
| "plain:\n" | |
| " This unquoted scalar\n" | |
| " spans many lines.\n" | |
| "\n" | |
| "quoted: \"So does this\n" | |
| " quoted scalar.\\n\""; | |
| const char *ex2_19 = | |
| "canonical: 12345\n" | |
| "decimal: +12345\n" | |
| "octal: 0o14\n" | |
| "hexadecimal: 0xC\n"; | |
| const char *ex2_20 = | |
| "canonical: 1.23015e+3\n" | |
| "exponential: 12.3015e+02\n" | |
| "fixed: 1230.15\n" | |
| "negative infinity: -.inf\n" | |
| "not a number: .NaN\n"; | |
| const char *ex2_21 = | |
| "null:\n" | |
| "booleans: [ true, false ]\n" | |
| "string: '012345'\n"; | |
| const char *ex2_22 = | |
| "canonical: 2001-12-15T02:59:43.1Z\n" | |
| "iso8601: 2001-12-14t21:59:43.10-05:00\n" | |
| "spaced: 2001-12-14 21:59:43.10 -5\n" | |
| "date: 2002-12-14\n"; | |
| const char *ex2_23 = | |
| "---\n" | |
| "not-date: !!str 2002-04-28\n" | |
| "\n" | |
| "picture: !!binary |\n" | |
| " R0lGODlhDAAMAIQAAP//9/X\n" | |
| " 17unp5WZmZgAAAOfn515eXv\n" | |
| " Pz7Y6OjuDg4J+fn5OTk6enp\n" | |
| " 56enmleECcgggoBADs=\n" | |
| "\n" | |
| "application specific tag: !something |\n" | |
| " The semantics of the tag\n" | |
| " above may be different for\n" | |
| " different documents."; | |
| const char *ex2_24 = | |
| "%TAG ! tag:clarkevans.com,2002:\n" | |
| "--- !shape\n" | |
| " # Use the ! handle for presenting\n" | |
| " # tag:clarkevans.com,2002:circle\n" | |
| "- !circle\n" | |
| " center: &ORIGIN {x: 73, y: 129}\n" | |
| " radius: 7\n" | |
| "- !line\n" | |
| " start: *ORIGIN\n" | |
| " finish: { x: 89, y: 102 }\n" | |
| "- !label\n" | |
| " start: *ORIGIN\n" | |
| " color: 0xFFEEBB\n" | |
| " text: Pretty vector drawing."; | |
| const char *ex2_25 = | |
| "# Sets are represented as a\n" | |
| "# Mapping where each key is\n" | |
| "# associated with a null value\n" | |
| "--- !!set\n" | |
| "? Mark McGwire\n" | |
| "? Sammy Sosa\n" | |
| "? Ken Griffey"; | |
| const char *ex2_26 = | |
| "# Ordered maps are represented as\n" | |
| "# A sequence of mappings, with\n" | |
| "# each mapping having one key\n" | |
| "--- !!omap\n" | |
| "- Mark McGwire: 65\n" | |
| "- Sammy Sosa: 63\n" | |
| "- Ken Griffey: 58"; | |
| const char *ex2_27 = | |
| "--- !<tag:clarkevans.com,2002:invoice>\n" | |
| "invoice: 34843\n" | |
| "date : 2001-01-23\n" | |
| "bill-to: &id001\n" | |
| " given : Chris\n" | |
| " family : Dumars\n" | |
| " address:\n" | |
| " lines: |\n" | |
| " 458 Walkman Dr.\n" | |
| " Suite #292\n" | |
| " city : Royal Oak\n" | |
| " state : MI\n" | |
| " postal : 48046\n" | |
| "ship-to: *id001\n" | |
| "product:\n" | |
| " - sku : BL394D\n" | |
| " quantity : 4\n" | |
| " description : Basketball\n" | |
| " price : 450.00\n" | |
| " - sku : BL4438H\n" | |
| " quantity : 1\n" | |
| " description : Super Hoop\n" | |
| " price : 2392.00\n" | |
| "tax : 251.42\n" | |
| "total: 4443.52\n" | |
| "comments:\n" | |
| " Late afternoon is best.\n" | |
| " Backup contact is Nancy\n" | |
| " Billsmer @ 338-4338."; | |
| const char *ex2_28 = | |
| "---\n" | |
| "Time: 2001-11-23 15:01:42 -5\n" | |
| "User: ed\n" | |
| "Warning:\n" | |
| " This is an error message\n" | |
| " for the log file\n" | |
| "---\n" | |
| "Time: 2001-11-23 15:02:31 -5\n" | |
| "User: ed\n" | |
| "Warning:\n" | |
| " A slightly different error\n" | |
| " message.\n" | |
| "---\n" | |
| "Date: 2001-11-23 15:03:17 -5\n" | |
| "User: ed\n" | |
| "Fatal:\n" | |
| " Unknown variable \"bar\"\n" | |
| "Stack:\n" | |
| " - file: TopClass.py\n" | |
| " line: 23\n" | |
| " code: |\n" | |
| " x = MoreObject(\"345\\n\")\n" | |
| " - file: MoreClass.py\n" | |
| " line: 58\n" | |
| " code: |-\n" | |
| " foo = bar"; | |
| // TODO: 5.1 - 5.2 BOM | |
| const char *ex5_3 = | |
| "sequence:\n" | |
| "- one\n" | |
| "- two\n" | |
| "mapping:\n" | |
| " ? sky\n" | |
| " : blue\n" | |
| " sea : green"; | |
| const char *ex5_4 = | |
| "sequence: [ one, two, ]\n" | |
| "mapping: { sky: blue, sea: green }"; | |
| const char *ex5_5 = "# Comment only."; | |
| const char *ex5_6 = | |
| "anchored: !local &anchor value\n" | |
| "alias: *anchor"; | |
| const char *ex5_7 = | |
| "literal: |\n" | |
| " some\n" | |
| " text\n" | |
| "folded: >\n" | |
| " some\n" | |
| " text\n"; | |
| const char *ex5_8 = | |
| "single: 'text'\n" | |
| "double: \"text\""; | |
| // TODO: 5.9 directive | |
| // TODO: 5.10 reserved indicator | |
| const char *ex5_11 = | |
| "|\n" | |
| " Line break (no glyph)\n" | |
| " Line break (glyphed)\n"; | |
| const char *ex5_12 = | |
| "# Tabs and spaces\n" | |
| "quoted: \"Quoted\t\"\n" | |
| "block: |\n" | |
| " void main() {\n" | |
| " \tprintf(\"Hello, world!\\n\");\n" | |
| " }"; | |
| const char *ex5_13 = | |
| "\"Fun with \\\\\n" | |
| "\\\" \\a \\b \\e \\f \\\n" | |
| "\\n \\r \\t \\v \\0 \\\n" | |
| "\\ \\_ \\N \\L \\P \\\n" | |
| "\\x41 \\u0041 \\U00000041\""; | |
| const char *ex5_14 = | |
| "Bad escapes:\n" | |
| " \"\\c\n" | |
| " \\xq-\""; | |
| const char *ex6_1 = | |
| " # Leading comment line spaces are\n" | |
| " # neither content nor indentation.\n" | |
| " \n" | |
| "Not indented:\n" | |
| " By one space: |\n" | |
| " By four\n" | |
| " spaces\n" | |
| " Flow style: [ # Leading spaces\n" | |
| " By two, # in flow style\n" | |
| " Also by two, # are neither\n" | |
| " \tStill by two # content nor\n" | |
| " ] # indentation."; | |
| const char *ex6_2 = | |
| "? a\n" | |
| ": -\tb\n" | |
| " - -\tc\n" | |
| " - d"; | |
| const char *ex6_3 = | |
| "- foo:\t bar\n" | |
| "- - baz\n" | |
| " -\tbaz"; | |
| const char *ex6_4 = | |
| "plain: text\n" | |
| " lines\n" | |
| "quoted: \"text\n" | |
| " \tlines\"\n" | |
| "block: |\n" | |
| " text\n" | |
| " \tlines\n"; | |
| const char *ex6_5 = | |
| "Folding:\n" | |
| " \"Empty line\n" | |
| " \t\n" | |
| " as a line feed\"\n" | |
| "Chomping: |\n" | |
| " Clipped empty lines\n" | |
| " "; | |
| const char *ex6_6 = | |
| ">-\n" | |
| " trimmed\n" | |
| " \n" | |
| " \n" | |
| "\n" | |
| " as\n" | |
| " space"; | |
| const char *ex6_7 = | |
| ">\n" | |
| " foo \n" | |
| " \n" | |
| " \t bar\n" | |
| "\n" | |
| " baz\n"; | |
| const char *ex6_8 = | |
| "\"\n" | |
| " foo \n" | |
| " \n" | |
| " \t bar\n" | |
| "\n" | |
| " baz\n" | |
| "\""; | |
| const char *ex6_9 = | |
| "key: # Comment\n" | |
| " value"; | |
| const char *ex6_10 = | |
| " # Comment\n" | |
| " \n" | |
| "\n"; | |
| const char *ex6_11 = | |
| "key: # Comment\n" | |
| " # lines\n" | |
| " value\n" | |
| "\n"; | |
| const char *ex6_12 = | |
| "{ first: Sammy, last: Sosa }:\n" | |
| "# Statistics:\n" | |
| " hr: # Home runs\n" | |
| " 65\n" | |
| " avg: # Average\n" | |
| " 0.278"; | |
| const char *ex6_13 = | |
| "%FOO bar baz # Should be ignored\n" | |
| " # with a warning.\n" | |
| "--- \"foo\""; | |
| const char *ex6_14 = | |
| "%YAML 1.3 # Attempt parsing\n" | |
| " # with a warning\n" | |
| "---\n" | |
| "\"foo\""; | |
| const char *ex6_15 = | |
| "%YAML 1.2\n" | |
| "%YAML 1.1\n" | |
| "foo"; | |
| const char *ex6_16 = | |
| "%TAG !yaml! tag:yaml.org,2002:\n" | |
| "---\n" | |
| "!yaml!str \"foo\""; | |
| const char *ex6_17 = | |
| "%TAG ! !foo\n" | |
| "%TAG ! !foo\n" | |
| "bar"; | |
| const char *ex6_18 = | |
| "# Private\n" | |
| "!foo \"bar\"\n" | |
| "...\n" | |
| "# Global\n" | |
| "%TAG ! tag:example.com,2000:app/\n" | |
| "---\n" | |
| "!foo \"bar\""; | |
| const char *ex6_19 = | |
| "%TAG !! tag:example.com,2000:app/\n" | |
| "---\n" | |
| "!!int 1 - 3 # Interval, not integer"; | |
| const char *ex6_20 = | |
| "%TAG !e! tag:example.com,2000:app/\n" | |
| "---\n" | |
| "!e!foo \"bar\""; | |
| const char *ex6_21 = | |
| "%TAG !m! !my-\n" | |
| "--- # Bulb here\n" | |
| "!m!light fluorescent\n" | |
| "...\n" | |
| "%TAG !m! !my-\n" | |
| "--- # Color here\n" | |
| "!m!light green"; | |
| const char *ex6_22 = | |
| "%TAG !e! tag:example.com,2000:app/\n" | |
| "---\n" | |
| "- !e!foo \"bar\""; | |
| const char *ex6_23 = | |
| "!!str &a1 \"foo\":\n" | |
| " !!str bar\n" | |
| "&a2 baz : *a1"; | |
| const char *ex6_24 = | |
| "!<tag:yaml.org,2002:str> foo :\n" | |
| " !<!bar> baz"; | |
| const char *ex6_25 = | |
| "- !<!> foo\n" | |
| "- !<$:?> bar\n"; | |
| const char *ex6_26 = | |
| "%TAG !e! tag:example.com,2000:app/\n" | |
| "---\n" | |
| "- !local foo\n" | |
| "- !!str bar\n" | |
| "- !e!tag%21 baz\n"; | |
| const char *ex6_27a = | |
| "%TAG !e! tag:example,2000:app/\n" | |
| "---\n" | |
| "- !e! foo"; | |
| const char *ex6_27b = | |
| "%TAG !e! tag:example,2000:app/\n" | |
| "---\n" | |
| "- !h!bar baz"; | |
| const char *ex6_28 = | |
| "# Assuming conventional resolution:\n" | |
| "- \"12\"\n" | |
| "- 12\n" | |
| "- ! 12"; | |
| const char *ex6_29 = | |
| "First occurrence: &anchor Value\n" | |
| "Second occurrence: *anchor"; | |
| const char *ex7_1 = | |
| "First occurrence: &anchor Foo\n" | |
| "Second occurrence: *anchor\n" | |
| "Override anchor: &anchor Bar\n" | |
| "Reuse anchor: *anchor"; | |
| const char *ex7_2 = | |
| "{\n" | |
| " foo : !!str,\n" | |
| " !!str : bar,\n" | |
| "}"; | |
| const char *ex7_3 = | |
| "{\n" | |
| " ? foo :,\n" | |
| " : bar,\n" | |
| "}\n"; | |
| const char *ex7_4 = | |
| "\"implicit block key\" : [\n" | |
| " \"implicit flow key\" : value,\n" | |
| " ]"; | |
| const char *ex7_5 = | |
| "\"folded \n" | |
| "to a space,\t\n" | |
| " \n" | |
| "to a line feed, or \t\\\n" | |
| " \\ \tnon-content\""; | |
| const char *ex7_6 = | |
| "\" 1st non-empty\n" | |
| "\n" | |
| " 2nd non-empty \n" | |
| "\t3rd non-empty \""; | |
| const char *ex7_7 = " 'here''s to \"quotes\"'"; | |
| const char *ex7_8 = | |
| "'implicit block key' : [\n" | |
| " 'implicit flow key' : value,\n" | |
| " ]"; | |
| const char *ex7_9 = | |
| "' 1st non-empty\n" | |
| "\n" | |
| " 2nd non-empty \n" | |
| "\t3rd non-empty '"; | |
| const char *ex7_10 = | |
| "# Outside flow collection:\n" | |
| "- ::vector\n" | |
| "- \": - ()\"\n" | |
| "- Up, up, and away!\n" | |
| "- -123\n" | |
| "- http://example.com/foo#bar\n" | |
| "# Inside flow collection:\n" | |
| "- [ ::vector,\n" | |
| " \": - ()\",\n" | |
| " \"Up, up, and away!\",\n" | |
| " -123,\n" | |
| " http://example.com/foo#bar ]"; | |
| const char *ex7_11 = | |
| "implicit block key : [\n" | |
| " implicit flow key : value,\n" | |
| " ]"; | |
| const char *ex7_12 = | |
| "1st non-empty\n" | |
| "\n" | |
| " 2nd non-empty \n" | |
| "\t3rd non-empty"; | |
| const char *ex7_13 = | |
| "- [ one, two, ]\n" | |
| "- [three ,four]"; | |
| const char *ex7_14 = | |
| "[\n" | |
| "\"double\n" | |
| " quoted\", 'single\n" | |
| " quoted',\n" | |
| "plain\n" | |
| " text, [ nested ],\n" | |
| "single: pair,\n" | |
| "]"; | |
| const char *ex7_15 = | |
| "- { one : two , three: four , }\n" | |
| "- {five: six,seven : eight}"; | |
| const char *ex7_16 = | |
| "{\n" | |
| "? explicit: entry,\n" | |
| "implicit: entry,\n" | |
| "?\n" | |
| "}"; | |
| const char *ex7_17 = | |
| "{\n" | |
| "unquoted : \"separate\",\n" | |
| "http://foo.com,\n" | |
| "omitted value:,\n" | |
| ": omitted key,\n" | |
| "}"; | |
| const char *ex7_18 = | |
| "{\n" | |
| "\"adjacent\":value,\n" | |
| "\"readable\":value,\n" | |
| "\"empty\":\n" | |
| "}"; | |
| const char *ex7_19 = | |
| "[\n" | |
| "foo: bar\n" | |
| "]"; | |
| const char *ex7_20 = | |
| "[\n" | |
| "? foo\n" | |
| " bar : baz\n" | |
| "]"; | |
| const char *ex7_21 = | |
| "- [ YAML : separate ]\n" | |
| "- [ : empty key entry ]\n" | |
| "- [ {JSON: like}:adjacent ]"; | |
| const char *ex7_22 = | |
| "[ foo\n" | |
| " bar: invalid,"; // Note: we don't check (on purpose) the >1K chars for an | |
| // implicit key | |
| const char *ex7_23 = | |
| "- [ a, b ]\n" | |
| "- { a: b }\n" | |
| "- \"a\"\n" | |
| "- 'b'\n" | |
| "- c"; | |
| const char *ex7_24 = | |
| "- !!str \"a\"\n" | |
| "- 'b'\n" | |
| "- &anchor \"c\"\n" | |
| "- *anchor\n" | |
| "- !!str"; | |
| const char *ex8_1 = | |
| "- | # Empty header\n" | |
| " literal\n" | |
| "- >1 # Indentation indicator\n" | |
| " folded\n" | |
| "- |+ # Chomping indicator\n" | |
| " keep\n" | |
| "\n" | |
| "- >1- # Both indicators\n" | |
| " strip\n"; | |
| const char *ex8_2 = | |
| "- |\n" | |
| " detected\n" | |
| "- >\n" | |
| " \n" | |
| " \n" | |
| " # detected\n" | |
| "- |1\n" | |
| " explicit\n" | |
| "- >\n" | |
| " \t\n" | |
| " detected\n"; | |
| const char *ex8_3a = | |
| "- |\n" | |
| " \n" | |
| " text"; | |
| const char *ex8_3b = | |
| "- >\n" | |
| " text\n" | |
| " text"; | |
| const char *ex8_3c = | |
| "- |2\n" | |
| " text"; | |
| const char *ex8_4 = | |
| "strip: |-\n" | |
| " text\n" | |
| "clip: |\n" | |
| " text\n" | |
| "keep: |+\n" | |
| " text\n"; | |
| const char *ex8_5 = | |
| " # Strip\n" | |
| " # Comments:\n" | |
| "strip: |-\n" | |
| " # text\n" | |
| " \n" | |
| " # Clip\n" | |
| " # comments:\n" | |
| "\n" | |
| "clip: |\n" | |
| " # text\n" | |
| " \n" | |
| " # Keep\n" | |
| " # comments:\n" | |
| "\n" | |
| "keep: |+\n" | |
| " # text\n" | |
| "\n" | |
| " # Trail\n" | |
| " # Comments\n"; | |
| const char *ex8_6 = | |
| "strip: >-\n" | |
| "\n" | |
| "clip: >\n" | |
| "\n" | |
| "keep: |+\n" | |
| "\n"; | |
| const char *ex8_7 = | |
| "|\n" | |
| " literal\n" | |
| " \ttext\n" | |
| "\n"; | |
| const char *ex8_8 = | |
| "|\n" | |
| " \n" | |
| " \n" | |
| " literal\n" | |
| " \n" | |
| " \n" | |
| " text\n" | |
| "\n" | |
| " # Comment\n"; | |
| const char *ex8_9 = | |
| ">\n" | |
| " folded\n" | |
| " text\n" | |
| "\n"; | |
| const char *ex8_10 = | |
| ">\n" | |
| "\n" | |
| " folded\n" | |
| " line\n" | |
| "\n" | |
| " next\n" | |
| " line\n" | |
| " * bullet\n" | |
| "\n" | |
| " * list\n" | |
| " * lines\n" | |
| "\n" | |
| " last\n" | |
| " line\n" | |
| "\n" | |
| "# Comment\n"; | |
| const char *ex8_11 = ex8_10; | |
| const char *ex8_12 = ex8_10; | |
| const char *ex8_13 = ex8_10; | |
| const char *ex8_14 = | |
| "block sequence:\n" | |
| " - one\n" | |
| " - two : three\n"; | |
| const char *ex8_15 = | |
| "- # Empty\n" | |
| "- |\n" | |
| " block node\n" | |
| "- - one # Compact\n" | |
| " - two # sequence\n" | |
| "- one: two # Compact mapping\n"; | |
| const char *ex8_16 = | |
| "block mapping:\n" | |
| " key: value\n"; | |
| const char *ex8_17 = | |
| "? explicit key # Empty value\n" | |
| "? |\n" | |
| " block key\n" | |
| ": - one # Explicit compact\n" | |
| " - two # block value\n"; | |
| const char *ex8_18 = | |
| "plain key: in-line value\n" | |
| ": # Both empty\n" | |
| "\"quoted key\":\n" | |
| "- entry\n"; | |
| const char *ex8_19 = | |
| "- sun: yellow\n" | |
| "- ? earth: blue\n" | |
| " : moon: white\n"; | |
| const char *ex8_20 = | |
| "-\n" | |
| " \"flow in block\"\n" | |
| "- >\n" | |
| " Block scalar\n" | |
| "- !!map # Block collection\n" | |
| " foo : bar\n"; | |
| const char *ex8_21 = | |
| "literal: |2\n" | |
| " value\n" | |
| "folded:\n" | |
| " !foo\n" | |
| " >1\n" | |
| " value\n"; | |
| const char *ex8_22 = | |
| "sequence: !!seq\n" | |
| "- entry\n" | |
| "- !!seq\n" | |
| " - nested\n" | |
| "mapping: !!map\n" | |
| " foo: bar\n"; | |
| } |