NimYAML/yaml.html

1788 lines
214 KiB
HTML
Raw Normal View History

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>NimYAML - Module yaml</title>
<link href="docutils.css" rel="stylesheet" type="text/css"/>
<link href="style.css" rel="stylesheet" type="text/css"/>
<link href='http://fonts.googleapis.com/css?family=Raleway:400,600,900' rel='stylesheet' type='text/css'/>
<link href='http://fonts.googleapis.com/css?family=Source+Code+Pro:400,500,600' rel='stylesheet' type='text/css'/>
</head>
<body>
2016-02-16 19:45:09 +00:00
<a href="https://github.com/flyx/NimYAML"><img style="position: absolute; top: 0; right: 0; border: 0; z-index: 10;" src="https://camo.githubusercontent.com/652c5b9acfaddf3a9c326fa6bde407b87f7be0f4/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f6f72616e67655f6666373630302e706e67" alt="Fork me on GitHub" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_orange_ff7600.png"></a>
<header>
<a class="pagetitle" href="/">NimYAML</a>
<a href="index.html">Home</a>
<a href="testing.html">Testing Ground</a>
2016-02-15 21:56:36 +00:00
<span>Docs:</span>
2016-02-15 18:51:05 +00:00
<a href="api.html">Overview</a>
2016-02-15 21:56:36 +00:00
<a href="serialization.html">Serialization</a>
<a href="yaml.html">Module yaml</a>
</header>
<article id="documentId">
<div class="container">
<h1 class="title">Module yaml</h1>
<div class="row">
<div class="three columns">
<ul class="simple simple-toc" id="toc-list">
<li>
<a class="reference reference-toplevel" href="#6" id="56">Imports</a>
<ul class="simple simple-toc-section">
</ul>
</li>
<li>
<a class="reference reference-toplevel" href="#7" id="57">Types</a>
<ul class="simple simple-toc-section">
2016-01-24 17:30:06 +00:00
<li><a class="reference" href="#TypeHint"
title="TypeHint = enum
yTypeInteger, yTypeFloat, yTypeFloatInf, yTypeFloatNaN, yTypeBoolTrue,
2016-01-24 17:30:06 +00:00
yTypeBoolFalse, yTypeNull, yTypeUnknown"><wbr />Type<wbr />Hint</a></li>
<li><a class="reference" href="#YamlStreamEventKind"
title="YamlStreamEventKind = enum
yamlStartDocument, yamlEndDocument, yamlStartMap, yamlEndMap, yamlStartSequence,
yamlEndSequence, yamlScalar, yamlAlias"><wbr />Yaml<wbr />Stream<wbr />Event<wbr />Kind</a></li>
<li><a class="reference" href="#TagId"
title="TagId = distinct int"><wbr />Tag<wbr />Id</a></li>
<li><a class="reference" href="#AnchorId"
title="AnchorId = distinct int"><wbr />Anchor<wbr />Id</a></li>
<li><a class="reference" href="#YamlStreamEvent"
title="YamlStreamEvent = object
case kind*: YamlStreamEventKind
of yamlStartMap:
mapAnchor*: AnchorId
mapTag*: TagId
of yamlStartSequence:
seqAnchor*: AnchorId
seqTag*: TagId
of yamlScalar:
scalarAnchor*: AnchorId
scalarTag*: TagId
scalarContent*: string
of yamlEndMap, yamlEndSequence, yamlStartDocument, yamlEndDocument:
nil
of yamlAlias:
aliasTarget*: AnchorId"><wbr />Yaml<wbr />Stream<wbr />Event</a></li>
<li><a class="reference" href="#YamlStream"
2016-02-12 19:46:01 +00:00
title="YamlStream = object
backend: iterator (): YamlStreamEvent
peeked: bool
cached: YamlStreamEvent"><wbr />Yaml<wbr />Stream</a></li>
2016-01-24 17:30:06 +00:00
<li><a class="reference" href="#TagLibrary"
title="TagLibrary = ref object
tags*: Table[string, TagId]
nextCustomTagId*: TagId
2016-01-24 17:30:06 +00:00
secondaryPrefix*: string"><wbr />Tag<wbr />Library</a></li>
<li><a class="reference" href="#WarningCallback"
title="WarningCallback = proc (line, column: int; lineContent: string; message: string)"><wbr />Warning<wbr />Callback</a></li>
<li><a class="reference" href="#YamlParser"
title="YamlParser = ref object
tagLib: TagLibrary
anchors: OrderedTable[string, AnchorId]
2016-01-24 17:30:06 +00:00
callback: WarningCallback
lexer: BaseLexer
tokenstart: int"><wbr />Yaml<wbr />Parser</a></li>
<li><a class="reference" href="#PresentationStyle"
title="PresentationStyle = enum
psMinimal, psCanonical, psDefault, psJson, psBlockOnly"><wbr />Presentation<wbr />Style</a></li>
2016-02-12 19:46:01 +00:00
<li><a class="reference" href="#TagStyle"
title="TagStyle = enum
tsNone, tsRootOnly, tsAll"><wbr />Tag<wbr />Style</a></li>
<li><a class="reference" href="#AnchorStyle"
title="AnchorStyle = enum
asNone, asTidy, asAlways"><wbr />Anchor<wbr />Style</a></li>
<li><a class="reference" href="#ConstructionContext"
title="ConstructionContext = ref object
refs: Table[AnchorId, pointer]"><wbr />Construction<wbr />Context</a></li>
<li><a class="reference" href="#SerializationContext"
title="SerializationContext = ref object
refsList: seq[RefNodeData]
style: AnchorStyle"><wbr />Serialization<wbr />Context</a></li>
<li><a class="reference" href="#RawYamlStream"
title="RawYamlStream = iterator (): YamlStreamEvent"><wbr />Raw<wbr />Yaml<wbr />Stream</a></li>
<li><a class="reference" href="#YamlLoadingError"
title="YamlLoadingError = object of Exception
line*: int ## line number (1-based) where the error was encountered
column*: int ## \
## column number (1-based) where the error was encountered
lineContent*: string ## \
## content of the line where the error was encountered. Includes a
## second line with a marker ``^`` at the position where the error
2016-01-24 17:30:06 +00:00
## was encountered."><wbr />Yaml<wbr />Loading<wbr />Error</a></li>
<li><a class="reference" href="#YamlParserError"
title="YamlParserError = object of YamlLoadingError"><wbr />Yaml<wbr />Parser<wbr />Error</a></li>
<li><a class="reference" href="#YamlPresenterJsonError"
title="YamlPresenterJsonError = object of Exception"><wbr />Yaml<wbr />Presenter<wbr />Json<wbr />Error</a></li>
<li><a class="reference" href="#YamlPresenterOutputError"
2016-01-24 17:30:06 +00:00
title="YamlPresenterOutputError = object of Exception"><wbr />Yaml<wbr />Presenter<wbr />Output<wbr />Error</a></li>
2016-02-12 19:46:01 +00:00
<li><a class="reference" href="#YamlStreamError"
title="YamlStreamError = object of Exception"><wbr />Yaml<wbr />Stream<wbr />Error</a></li>
2016-01-24 17:30:06 +00:00
<li><a class="reference" href="#YamlConstructionError"
title="YamlConstructionError = object of YamlLoadingError"><wbr />Yaml<wbr />Construction<wbr />Error</a></li>
2016-02-12 19:46:01 +00:00
</ul>
</li>
<li>
<a class="reference reference-toplevel" href="#8" id="58">Vars</a>
<ul class="simple simple-toc-section">
<li><a class="reference" href="#serializationTagLibrary"
title="serializationTagLibrary = initSerializationTagLibrary()"><wbr />serialization<wbr />Tag<wbr />Library</a></li>
</ul>
</li>
2016-02-15 18:51:05 +00:00
<li>
<a class="reference reference-toplevel" href="#9" id="59">Lets</a>
<ul class="simple simple-toc-section">
<li><a class="reference" href="#yTagNimChar"
title="yTagNimChar = registerUri(serializationTagLibrary, &quot;!nim:system:char&quot;)"><wbr />y<wbr />Tag<wbr />Nim<wbr />Char</a></li>
<li><a class="reference" href="#yTagNimInt8"
title="yTagNimInt8 = registerUri(serializationTagLibrary, &quot;!nim:system:int8&quot;)"><wbr />y<wbr />Tag<wbr />Nim<wbr />Int8</a></li>
<li><a class="reference" href="#yTagNimInt16"
title="yTagNimInt16 = registerUri(serializationTagLibrary, &quot;!nim:system:int16&quot;)"><wbr />y<wbr />Tag<wbr />Nim<wbr />Int16</a></li>
<li><a class="reference" href="#yTagNimInt32"
title="yTagNimInt32 = registerUri(serializationTagLibrary, &quot;!nim:system:int32&quot;)"><wbr />y<wbr />Tag<wbr />Nim<wbr />Int32</a></li>
<li><a class="reference" href="#yTagNimInt64"
title="yTagNimInt64 = registerUri(serializationTagLibrary, &quot;!nim:system:int64&quot;)"><wbr />y<wbr />Tag<wbr />Nim<wbr />Int64</a></li>
<li><a class="reference" href="#yTagNimUInt8"
title="yTagNimUInt8 = registerUri(serializationTagLibrary, &quot;!nim:system:uint8&quot;)"><wbr />y<wbr />Tag<wbr />Nim<wbr />UInt8</a></li>
<li><a class="reference" href="#yTagNimUInt16"
title="yTagNimUInt16 = registerUri(serializationTagLibrary, &quot;!nim:system:uint16&quot;)"><wbr />y<wbr />Tag<wbr />Nim<wbr />UInt16</a></li>
<li><a class="reference" href="#yTagNimUInt32"
title="yTagNimUInt32 = registerUri(serializationTagLibrary, &quot;!nim:system:uint32&quot;)"><wbr />y<wbr />Tag<wbr />Nim<wbr />UInt32</a></li>
<li><a class="reference" href="#yTagNimUInt64"
title="yTagNimUInt64 = registerUri(serializationTagLibrary, &quot;!nim:system:uint64&quot;)"><wbr />y<wbr />Tag<wbr />Nim<wbr />UInt64</a></li>
<li><a class="reference" href="#yTagNimFloat32"
title="yTagNimFloat32 = registerUri(serializationTagLibrary, &quot;!nim:system:float32&quot;)"><wbr />y<wbr />Tag<wbr />Nim<wbr />Float32</a></li>
<li><a class="reference" href="#yTagNimFloat64"
title="yTagNimFloat64 = registerUri(serializationTagLibrary, &quot;!nim:system:float64&quot;)"><wbr />y<wbr />Tag<wbr />Nim<wbr />Float64</a></li>
</ul>
</li>
<li>
<a class="reference reference-toplevel" href="#10" id="60">Consts</a>
<ul class="simple simple-toc-section">
<li><a class="reference" href="#yTagExclamationMark"
title="yTagExclamationMark: TagId = 0"><wbr />y<wbr />Tag<wbr />Exclamation<wbr />Mark</a></li>
<li><a class="reference" href="#yTagQuestionMark"
title="yTagQuestionMark: TagId = 1"><wbr />y<wbr />Tag<wbr />Question<wbr />Mark</a></li>
<li><a class="reference" href="#yTagString"
title="yTagString: TagId = 2"><wbr />y<wbr />Tag<wbr />String</a></li>
<li><a class="reference" href="#yTagSequence"
title="yTagSequence: TagId = 3"><wbr />y<wbr />Tag<wbr />Sequence</a></li>
<li><a class="reference" href="#yTagMap"
title="yTagMap: TagId = 4"><wbr />y<wbr />Tag<wbr />Map</a></li>
<li><a class="reference" href="#yTagNull"
title="yTagNull: TagId = 5"><wbr />y<wbr />Tag<wbr />Null</a></li>
<li><a class="reference" href="#yTagBoolean"
title="yTagBoolean: TagId = 6"><wbr />y<wbr />Tag<wbr />Boolean</a></li>
<li><a class="reference" href="#yTagInteger"
title="yTagInteger: TagId = 7"><wbr />y<wbr />Tag<wbr />Integer</a></li>
<li><a class="reference" href="#yTagFloat"
title="yTagFloat: TagId = 8"><wbr />y<wbr />Tag<wbr />Float</a></li>
<li><a class="reference" href="#yTagOrderedMap"
title="yTagOrderedMap: TagId = 9"><wbr />y<wbr />Tag<wbr />Ordered<wbr />Map</a></li>
<li><a class="reference" href="#yTagPairs"
title="yTagPairs: TagId = 10"><wbr />y<wbr />Tag<wbr />Pairs</a></li>
<li><a class="reference" href="#yTagSet"
title="yTagSet: TagId = 11"><wbr />y<wbr />Tag<wbr />Set</a></li>
<li><a class="reference" href="#yTagBinary"
title="yTagBinary: TagId = 12"><wbr />y<wbr />Tag<wbr />Binary</a></li>
<li><a class="reference" href="#yTagMerge"
title="yTagMerge: TagId = 13"><wbr />y<wbr />Tag<wbr />Merge</a></li>
<li><a class="reference" href="#yTagTimestamp"
title="yTagTimestamp: TagId = 14"><wbr />y<wbr />Tag<wbr />Timestamp</a></li>
<li><a class="reference" href="#yTagValue"
title="yTagValue: TagId = 15"><wbr />y<wbr />Tag<wbr />Value</a></li>
<li><a class="reference" href="#yTagYaml"
title="yTagYaml: TagId = 16"><wbr />y<wbr />Tag<wbr />Yaml</a></li>
<li><a class="reference" href="#yFirstCustomTagId"
title="yFirstCustomTagId: TagId = 1000"><wbr />y<wbr />First<wbr />Custom<wbr />Tag<wbr />Id</a></li>
<li><a class="reference" href="#yAnchorNone"
title="yAnchorNone: AnchorId = -1"><wbr />y<wbr />Anchor<wbr />None</a></li>
<li><a class="reference" href="#yamlTagRepositoryPrefix"
title="yamlTagRepositoryPrefix = &quot;tag:yaml.org,2002:&quot;"><wbr />yaml<wbr />Tag<wbr />Repository<wbr />Prefix</a></li>
</ul>
</li>
<li>
<a class="reference reference-toplevel" href="#12" id="62">Procs</a>
<ul class="simple simple-toc-section">
<li><a class="reference" href="#==,TagId,TagId"
title="`==`(left, right: TagId): bool"><wbr />`==`</a></li>
<li><a class="reference" href="#hash,TagId"
title="hash(id: TagId): Hash"><wbr />hash</a></li>
<li><a class="reference" href="#==,AnchorId,AnchorId"
title="`==`(left, right: AnchorId): bool"><wbr />`==`</a></li>
<li><a class="reference" href="#$,AnchorId"
title="`$`(id: AnchorId): string"><wbr />`$`</a></li>
<li><a class="reference" href="#hash,AnchorId"
title="hash(id: AnchorId): Hash"><wbr />hash</a></li>
2016-01-24 17:30:06 +00:00
<li><a class="reference" href="#$,TagId"
title="`$`(id: TagId): string"><wbr />`$`</a></li>
<li><a class="reference" href="#initTagLibrary,"
2016-01-24 17:30:06 +00:00
title="initTagLibrary(): TagLibrary"><wbr />init<wbr />Tag<wbr />Library</a></li>
<li><a class="reference" href="#registerUri,TagLibrary,string"
title="registerUri(tagLib: TagLibrary; uri: string): TagId"><wbr />register<wbr />Uri</a></li>
<li><a class="reference" href="#uri,TagLibrary,TagId"
title="uri(tagLib: TagLibrary; id: TagId): string"><wbr />uri</a></li>
<li><a class="reference" href="#initFailsafeTagLibrary,"
title="initFailsafeTagLibrary(): TagLibrary"><wbr />init<wbr />Failsafe<wbr />Tag<wbr />Library</a></li>
<li><a class="reference" href="#initCoreTagLibrary,"
title="initCoreTagLibrary(): TagLibrary"><wbr />init<wbr />Core<wbr />Tag<wbr />Library</a></li>
<li><a class="reference" href="#initExtendedTagLibrary,"
title="initExtendedTagLibrary(): TagLibrary"><wbr />init<wbr />Extended<wbr />Tag<wbr />Library</a></li>
<li><a class="reference" href="#==,YamlStreamEvent,YamlStreamEvent"
title="`==`(left: YamlStreamEvent; right: YamlStreamEvent): bool"><wbr />`==`</a></li>
<li><a class="reference" href="#$,YamlStreamEvent"
title="`$`(event: YamlStreamEvent): string"><wbr />`$`</a></li>
<li><a class="reference" href="#startDocEvent,"
title="startDocEvent(): YamlStreamEvent"><wbr />start<wbr />Doc<wbr />Event</a></li>
<li><a class="reference" href="#endDocEvent,"
title="endDocEvent(): YamlStreamEvent"><wbr />end<wbr />Doc<wbr />Event</a></li>
<li><a class="reference" href="#startMapEvent,TagId,AnchorId"
title="startMapEvent(tag: TagId = yTagQuestionMark; anchor: AnchorId = yAnchorNone): YamlStreamEvent"><wbr />start<wbr />Map<wbr />Event</a></li>
<li><a class="reference" href="#endMapEvent,"
title="endMapEvent(): YamlStreamEvent"><wbr />end<wbr />Map<wbr />Event</a></li>
<li><a class="reference" href="#startSeqEvent,TagId,AnchorId"
title="startSeqEvent(tag: TagId = yTagQuestionMark; anchor: AnchorId = yAnchorNone): YamlStreamEvent"><wbr />start<wbr />Seq<wbr />Event</a></li>
<li><a class="reference" href="#endSeqEvent,"
title="endSeqEvent(): YamlStreamEvent"><wbr />end<wbr />Seq<wbr />Event</a></li>
2016-01-24 17:30:06 +00:00
<li><a class="reference" href="#scalarEvent,string,TagId,AnchorId"
title="scalarEvent(content: string = &quot;&quot;; tag: TagId = yTagQuestionMark;
2016-01-24 17:30:06 +00:00
anchor: AnchorId = yAnchorNone): YamlStreamEvent"><wbr />scalar<wbr />Event</a></li>
<li><a class="reference" href="#aliasEvent,AnchorId"
title="aliasEvent(anchor: AnchorId): YamlStreamEvent"><wbr />alias<wbr />Event</a></li>
<li><a class="reference" href="#constructJson,YamlStream"
2016-02-12 19:46:01 +00:00
title="constructJson(s: var YamlStream): seq[JsonNode]"><wbr />construct<wbr />Json</a></li>
<li><a class="reference" href="#loadToJson,Stream"
title="loadToJson(s: Stream): seq[JsonNode]"><wbr />load<wbr />To<wbr />Json</a></li>
2016-01-24 17:30:06 +00:00
<li><a class="reference" href="#present,YamlStream,Stream,TagLibrary,PresentationStyle,int"
2016-02-12 19:46:01 +00:00
title="present(s: var YamlStream; target: Stream; tagLib: TagLibrary;
2016-01-24 17:30:06 +00:00
style: PresentationStyle = psDefault; indentationStep: int = 2)"><wbr />present</a></li>
<li><a class="reference" href="#transform,Stream,Stream,PresentationStyle,int"
title="transform(input: Stream; output: Stream; style: PresentationStyle;
indentationStep: int = 2)"><wbr />transform</a></li>
2016-01-24 17:30:06 +00:00
<li><a class="reference" href="#guessType,string"
title="guessType(scalar: string): TypeHint"><wbr />guess<wbr />Type</a></li>
<li><a class="reference" href="#newYamlParser,TagLibrary,WarningCallback"
title="newYamlParser(tagLib: TagLibrary = initExtendedTagLibrary();
callback: WarningCallback = nil): YamlParser"><wbr />new<wbr />Yaml<wbr />Parser</a></li>
<li><a class="reference" href="#getLineNumber,YamlParser"
title="getLineNumber(p: YamlParser): int"><wbr />get<wbr />Line<wbr />Number</a></li>
<li><a class="reference" href="#getColNumber,YamlParser"
title="getColNumber(p: YamlParser): int"><wbr />get<wbr />Col<wbr />Number</a></li>
<li><a class="reference" href="#getLineContent,YamlParser,bool"
title="getLineContent(p: YamlParser; marker: bool = true): string"><wbr />get<wbr />Line<wbr />Content</a></li>
<li><a class="reference" href="#parse,YamlParser,Stream"
title="parse(p: YamlParser; s: Stream): YamlStream"><wbr />parse</a></li>
2016-02-12 19:46:01 +00:00
<li><a class="reference" href="#initYamlStream,"
title="initYamlStream(backend: iterator (): YamlStreamEvent): YamlStream"><wbr />init<wbr />Yaml<wbr />Stream</a></li>
<li><a class="reference" href="#next,YamlStream"
title="next(s: var YamlStream): YamlStreamEvent"><wbr />next</a></li>
<li><a class="reference" href="#peek,YamlStream"
title="peek(s: var YamlStream): YamlStreamEvent"><wbr />peek</a></li>
<li><a class="reference" href="#peek=,YamlStream,YamlStreamEvent"
title="peek=(s: var YamlStream; value: YamlStreamEvent)"><wbr />peek=</a></li>
<li><a class="reference" href="#finished,YamlStream"
title="finished(s: var YamlStream): bool"><wbr />finished</a></li>
2016-02-15 18:51:05 +00:00
<li><a class="reference" href="#yamlTag,"
title="yamlTag[](T: (system.[]|tables.[]|tables.[]|json.[]|tables.[]|tables.[]|system.[]|json.[]|tables.[]|system.[]|tables.[]|system.[]|system.[]|tables.[]|macros.[]|tables.[]|tables.[]|...)(
typedesc, char)): TagId"><wbr />yaml<wbr />Tag</a></li>
<li><a class="reference" href="#yamlTag,_2"
title="yamlTag[](T: (system.[]|tables.[]|tables.[]|json.[]|tables.[]|tables.[]|system.[]|json.[]|tables.[]|system.[]|tables.[]|system.[]|system.[]|tables.[]|macros.[]|tables.[]|tables.[]|...)(
typedesc, int8)): TagId"><wbr />yaml<wbr />Tag</a></li>
<li><a class="reference" href="#yamlTag,_3"
title="yamlTag[](T: (system.[]|tables.[]|tables.[]|json.[]|tables.[]|tables.[]|system.[]|json.[]|tables.[]|system.[]|tables.[]|system.[]|system.[]|tables.[]|macros.[]|tables.[]|tables.[]|...)(
typedesc, int16)): TagId"><wbr />yaml<wbr />Tag</a></li>
<li><a class="reference" href="#yamlTag,_4"
title="yamlTag[](T: (system.[]|tables.[]|tables.[]|json.[]|tables.[]|tables.[]|system.[]|json.[]|tables.[]|system.[]|tables.[]|system.[]|system.[]|tables.[]|macros.[]|tables.[]|tables.[]|...)(
typedesc, int32)): TagId"><wbr />yaml<wbr />Tag</a></li>
<li><a class="reference" href="#yamlTag,_5"
title="yamlTag[](T: (system.[]|tables.[]|tables.[]|json.[]|tables.[]|tables.[]|system.[]|json.[]|tables.[]|system.[]|tables.[]|system.[]|system.[]|tables.[]|macros.[]|tables.[]|tables.[]|...)(
typedesc, int64)): TagId"><wbr />yaml<wbr />Tag</a></li>
<li><a class="reference" href="#yamlTag,_6"
title="yamlTag[](T: (system.[]|tables.[]|tables.[]|json.[]|tables.[]|tables.[]|system.[]|json.[]|tables.[]|system.[]|tables.[]|system.[]|system.[]|tables.[]|macros.[]|tables.[]|tables.[]|...)(
typedesc, uint8)): TagId"><wbr />yaml<wbr />Tag</a></li>
<li><a class="reference" href="#yamlTag,_7"
title="yamlTag[](T: (system.[]|tables.[]|tables.[]|json.[]|tables.[]|tables.[]|system.[]|json.[]|tables.[]|system.[]|tables.[]|system.[]|system.[]|tables.[]|macros.[]|tables.[]|tables.[]|...)(
typedesc, uint16)): TagId"><wbr />yaml<wbr />Tag</a></li>
<li><a class="reference" href="#yamlTag,_8"
title="yamlTag[](T: (system.[]|tables.[]|tables.[]|json.[]|tables.[]|tables.[]|system.[]|json.[]|tables.[]|system.[]|tables.[]|system.[]|system.[]|tables.[]|macros.[]|tables.[]|tables.[]|...)(
typedesc, uint32)): TagId"><wbr />yaml<wbr />Tag</a></li>
<li><a class="reference" href="#yamlTag,_9"
title="yamlTag[](T: (system.[]|tables.[]|tables.[]|json.[]|tables.[]|tables.[]|system.[]|json.[]|tables.[]|system.[]|tables.[]|system.[]|system.[]|tables.[]|macros.[]|tables.[]|tables.[]|...)(
typedesc, uint64)): TagId"><wbr />yaml<wbr />Tag</a></li>
<li><a class="reference" href="#yamlTag,_10"
title="yamlTag[](T: (system.[]|tables.[]|tables.[]|json.[]|tables.[]|tables.[]|system.[]|json.[]|tables.[]|system.[]|tables.[]|system.[]|system.[]|tables.[]|macros.[]|tables.[]|tables.[]|...)(
typedesc, float32)): TagId"><wbr />yaml<wbr />Tag</a></li>
<li><a class="reference" href="#yamlTag,_11"
title="yamlTag[](T: (system.[]|tables.[]|tables.[]|json.[]|tables.[]|tables.[]|system.[]|json.[]|tables.[]|system.[]|tables.[]|system.[]|system.[]|tables.[]|macros.[]|tables.[]|tables.[]|...)(
typedesc, float64)): TagId"><wbr />yaml<wbr />Tag</a></li>
2016-02-12 19:46:01 +00:00
<li><a class="reference" href="#lazyLoadTag,string"
title="lazyLoadTag(uri: string): TagId"><wbr />lazy<wbr />Load<wbr />Tag</a></li>
<li><a class="reference" href="#safeTagUri,TagId"
title="safeTagUri(id: TagId): string"><wbr />safe<wbr />Tag<wbr />Uri</a></li>
2016-02-16 19:09:27 +00:00
<li><a class="reference" href="#constructChild,YamlStream,ConstructionContext,T"
title="constructChild[T](s: var YamlStream; c: ConstructionContext; result: var T)"><wbr />construct<wbr />Child</a></li>
<li><a class="reference" href="#constructChild,YamlStream,ConstructionContext,ref.O"
title="constructChild[O](s: var YamlStream; c: ConstructionContext; result: var ref O)"><wbr />construct<wbr />Child</a></li>
2016-02-12 19:46:01 +00:00
<li><a class="reference" href="#yamlTag,typedesc[string]"
title="yamlTag[](T: typedesc[string]): TagId"><wbr />yaml<wbr />Tag</a></li>
<li><a class="reference" href="#constructObject,YamlStream,ConstructionContext,string"
title="constructObject(s: var YamlStream; c: ConstructionContext; result: var string)"><wbr />construct<wbr />Object</a></li>
<li><a class="reference" href="#representObject,string,TagStyle,SerializationContext"
title="representObject(value: string; ts: TagStyle = tsNone; c: SerializationContext): RawYamlStream"><wbr />represent<wbr />Object</a></li>
<li><a class="reference" href="#constructObject,YamlStream,ConstructionContext,T"
title="constructObject[T](s: var YamlStream; c: ConstructionContext; result: var T)"><wbr />construct<wbr />Object</a></li>
<li><a class="reference" href="#representObject,T,TagStyle,SerializationContext"
title="representObject[T](value: T; ts: TagStyle = tsNone; c: SerializationContext): RawYamlStream"><wbr />represent<wbr />Object</a></li>
<li><a class="reference" href="#constructObject,YamlStream,ConstructionContext,T_2"
title="constructObject[T](s: var YamlStream; c: ConstructionContext; result: var T)"><wbr />construct<wbr />Object</a></li>
<li><a class="reference" href="#representObject,T,TagStyle,SerializationContext_2"
title="representObject[T](value: T; ts: TagStyle; c: SerializationContext): RawYamlStream"><wbr />represent<wbr />Object</a></li>
<li><a class="reference" href="#constructObject,YamlStream,ConstructionContext,T_3"
title="constructObject[T](s: var YamlStream; c: ConstructionContext; result: var T)"><wbr />construct<wbr />Object</a></li>
<li><a class="reference" href="#representObject,T,TagStyle,SerializationContext_3"
title="representObject[T](value: T; ts: TagStyle; c: SerializationContext): RawYamlStream"><wbr />represent<wbr />Object</a></li>
<li><a class="reference" href="#yamlTag,typedesc[bool]"
title="yamlTag[](T: typedesc[bool]): TagId"><wbr />yaml<wbr />Tag</a></li>
<li><a class="reference" href="#constructObject,YamlStream,ConstructionContext,bool"
title="constructObject(s: var YamlStream; c: ConstructionContext; result: var bool)"><wbr />construct<wbr />Object</a></li>
<li><a class="reference" href="#representObject,bool,TagStyle,SerializationContext"
title="representObject(value: bool; ts: TagStyle; c: SerializationContext): RawYamlStream"><wbr />represent<wbr />Object</a></li>
<li><a class="reference" href="#constructObject,YamlStream,ConstructionContext,char"
title="constructObject(s: var YamlStream; c: ConstructionContext; result: var char)"><wbr />construct<wbr />Object</a></li>
<li><a class="reference" href="#representObject,char,TagStyle,SerializationContext"
title="representObject(value: char; ts: TagStyle; c: SerializationContext): RawYamlStream"><wbr />represent<wbr />Object</a></li>
<li><a class="reference" href="#yamlTag,typedesc[seq[I]]"
title="yamlTag[I, ](T: typedesc[seq[I]]): TagId"><wbr />yaml<wbr />Tag</a></li>
<li><a class="reference" href="#constructObject,YamlStream,ConstructionContext,seq[T]"
title="constructObject[T](s: var YamlStream; c: ConstructionContext; result: var seq[T])"><wbr />construct<wbr />Object</a></li>
<li><a class="reference" href="#representObject,seq[T],TagStyle,SerializationContext"
title="representObject[T](value: seq[T]; ts: TagStyle; c: SerializationContext): RawYamlStream"><wbr />represent<wbr />Object</a></li>
<li><a class="reference" href="#yamlTag,typedesc[Table[K,V]]"
title="yamlTag[K, V, ](T: typedesc[Table[K, V]]): TagId"><wbr />yaml<wbr />Tag</a></li>
<li><a class="reference" href="#constructObject,YamlStream,ConstructionContext,Table[K,V]"
title="constructObject[K, V](s: var YamlStream; c: ConstructionContext;
result: var Table[K, V])"><wbr />construct<wbr />Object</a></li>
<li><a class="reference" href="#representObject,Table[K,V],TagStyle,SerializationContext"
title="representObject[K, V](value: Table[K, V]; ts: TagStyle; c: SerializationContext): RawYamlStream"><wbr />represent<wbr />Object</a></li>
<li><a class="reference" href="#constructObject,YamlStream,ConstructionContext,O"
title="constructObject[O](s: var YamlStream; c: ConstructionContext; result: var O)"><wbr />construct<wbr />Object</a></li>
<li><a class="reference" href="#representObject,O,TagStyle,SerializationContext"
title="representObject[O](value: O; ts: TagStyle; c: SerializationContext): RawYamlStream"><wbr />represent<wbr />Object</a></li>
<li><a class="reference" href="#constructObject,YamlStream,ConstructionContext,O_2"
title="constructObject[O](s: var YamlStream; c: ConstructionContext; result: var O)"><wbr />construct<wbr />Object</a></li>
<li><a class="reference" href="#representObject,O,TagStyle,SerializationContext_2"
title="representObject[O](value: O; ts: TagStyle; c: SerializationContext): RawYamlStream"><wbr />represent<wbr />Object</a></li>
<li><a class="reference" href="#yamlTag,typedesc[ref.O]"
title="yamlTag[O, ](T: typedesc[ref O]): TagId"><wbr />yaml<wbr />Tag</a></li>
2016-02-16 19:09:27 +00:00
<li><a class="reference" href="#constructChild,YamlStream,ConstructionContext,T_2"
title="constructChild[T](s: var YamlStream; c: ConstructionContext; result: var T)"><wbr />construct<wbr />Child</a></li>
<li><a class="reference" href="#constructChild,YamlStream,ConstructionContext,ref.O_2"
title="constructChild[O](s: var YamlStream; c: ConstructionContext; result: var ref O)"><wbr />construct<wbr />Child</a></li>
2016-02-12 19:46:01 +00:00
<li><a class="reference" href="#representObject,ref.O,TagStyle,SerializationContext"
title="representObject[O](value: ref O; ts: TagStyle; c: SerializationContext): RawYamlStream"><wbr />represent<wbr />Object</a></li>
<li><a class="reference" href="#construct,YamlStream,T"
title="construct[T](s: var YamlStream; target: var T)"><wbr />construct</a></li>
<li><a class="reference" href="#load,Stream,K"
title="load[K](input: Stream; target: var K)"><wbr />load</a></li>
<li><a class="reference" href="#represent,T,TagStyle,AnchorStyle"
title="represent[T](value: T; ts: TagStyle = tsRootOnly; a: AnchorStyle = asTidy): YamlStream"><wbr />represent</a></li>
<li><a class="reference" href="#dump,K,Stream,PresentationStyle,TagStyle,AnchorStyle,int"
title="dump[K](value: K; target: Stream; style: PresentationStyle = psDefault;
tagStyle: TagStyle = tsRootOnly; anchorStyle: AnchorStyle = asTidy;
indentationStep: int = 2)"><wbr />dump</a></li>
</ul>
</li>
<li>
<a class="reference reference-toplevel" href="#14" id="64">Iterators</a>
<ul class="simple simple-toc-section">
<li><a class="reference" href="#items.i,YamlStream"
title="items(s: var YamlStream): YamlStreamEvent"><wbr />items</a></li>
</ul>
</li>
<li>
<a class="reference reference-toplevel" href="#17" id="67">Templates</a>
<ul class="simple simple-toc-section">
2016-02-16 19:09:27 +00:00
<li><a class="reference" href="#presentTag.t,typedesc,TagStyle"
title="presentTag[](t: typedesc; ts: TagStyle): TagId"><wbr />present<wbr />Tag</a></li>
<li><a class="reference" href="#setTagUriForType.t,typedesc,string"
2016-02-15 18:51:05 +00:00
title="setTagUriForType[](t: typedesc; uri: string): stmt"><wbr />set<wbr />Tag<wbr />Uri<wbr />For<wbr />Type</a></li>
<li><a class="reference" href="#setTagUriForType.t,typedesc,string,expr"
title="setTagUriForType[](t: typedesc; uri: string; idName: expr): stmt"><wbr />set<wbr />Tag<wbr />Uri<wbr />For<wbr />Type</a></li>
2016-02-16 19:09:27 +00:00
<li><a class="reference" href="#constructScalarItem.t,YamlStream,YamlStreamEvent,string,stmt"
title="constructScalarItem(bs: var YamlStream; item: YamlStreamEvent; name: string;
content: stmt)"><wbr />construct<wbr />Scalar<wbr />Item</a></li>
2016-02-15 18:51:05 +00:00
<li><a class="reference" href="#constructObject.t,YamlStream,ConstructionContext,int"
2016-02-12 19:46:01 +00:00
title="constructObject(s: var YamlStream; c: ConstructionContext; result: var int)"><wbr />construct<wbr />Object</a></li>
<li><a class="reference" href="#representObject.t,int,TagStyle,SerializationContext"
title="representObject(value: int; tagStyle: TagStyle; c: SerializationContext): RawYamlStream"><wbr />represent<wbr />Object</a></li>
<li><a class="reference" href="#constructObject.t,YamlStream,ConstructionContext,uint"
title="constructObject(s: var YamlStream; c: ConstructionContext; result: var uint)"><wbr />construct<wbr />Object</a></li>
<li><a class="reference" href="#representObject.t,uint,TagStyle,SerializationContext"
title="representObject(value: uint; ts: TagStyle; c: SerializationContext): RawYamlStream"><wbr />represent<wbr />Object</a></li>
<li><a class="reference" href="#constructObject.t,YamlStream,ConstructionContext,float"
title="constructObject(s: var YamlStream; c: ConstructionContext; result: var float)"><wbr />construct<wbr />Object</a></li>
<li><a class="reference" href="#representObject.t,float,TagStyle,SerializationContext"
title="representObject(value: float; tagStyle: TagStyle; c: SerializationContext): RawYamlStream"><wbr />represent<wbr />Object</a></li>
<li><a class="reference" href="#yamlTag.t,typedesc[]"
title="yamlTag[](T: typedesc[object | enum]): expr"><wbr />yaml<wbr />Tag</a></li>
<li><a class="reference" href="#yamlTag.t,typedesc[]_2"
title="yamlTag[](T: typedesc[tuple]): expr"><wbr />yaml<wbr />Tag</a></li>
</ul>
</li>
</ul>
</div>
<div class="nine columns" id="content">
<p class="module-desc"><p>This module provides facilities to generate and interpret <a class="reference external" href="http://yaml.org">YAML</a> character streams. All primitive operations on data objects use a <a class="reference external" href="#YamlStream">YamlStream</a> either as source or as output. Because this stream is implemented as iterator, it is possible to process YAML input and output sequentially, i.e. without loading the processed data structure completely into RAM. This supports the processing of large data structures.</p>
2016-02-12 19:46:01 +00:00
<p>As YAML is a strict superset of <a class="reference external" href="http://json.org">JSON</a>, JSON input is automatically supported. While JSON is less readable than YAML, this enhances interoperability with other languages.</p>
</p>
<section id="6">
<h1><a class="toc-backref" href="#6">Imports</a></h1>
<dl class="item">
2016-02-12 19:46:01 +00:00
<a class="reference external" href="streams.html">streams</a>, <a class="reference external" href="unicode.html">unicode</a>, <a class="reference external" href="lexbase.html">lexbase</a>, <a class="reference external" href="tables.html">tables</a>, <a class="reference external" href="strutils.html">strutils</a>, <a class="reference external" href="json.html">json</a>, <a class="reference external" href="hashes.html">hashes</a>, <a class="reference external" href="queues.html">queues</a>, <a class="reference external" href="macros.html">macros</a>, <a class="reference external" href="typetraits.html">typetraits</a>, <a class="reference external" href="typetraits.html">typetraits</a>
</dl></section>
<section id="7">
<h1><a class="toc-backref" href="#7">Types</a></h1>
<dl class="item">
2016-01-24 17:30:06 +00:00
<dt id="TypeHint"><a name="TypeHint"></a><pre><span class="Identifier">TypeHint</span> <span class="Other">=</span> <span class="Keyword">enum</span>
<span class="Identifier">yTypeInteger</span><span class="Other">,</span> <span class="Identifier">yTypeFloat</span><span class="Other">,</span> <span class="Identifier">yTypeFloatInf</span><span class="Other">,</span> <span class="Identifier">yTypeFloatNaN</span><span class="Other">,</span> <span class="Identifier">yTypeBoolTrue</span><span class="Other">,</span>
2016-01-24 17:30:06 +00:00
<span class="Identifier">yTypeBoolFalse</span><span class="Other">,</span> <span class="Identifier">yTypeNull</span><span class="Other">,</span> <span class="Identifier">yTypeUnknown</span></pre></dt>
<dd>
<p>A type hint can be computed from scalar content and tells you what NimYAML thinks the scalar's type is. It is generated by <a class="reference external" href="#guessType,string">guessType</a> The first matching RegEx in the following table will be the type hint of a scalar string.</p>
2016-01-24 17:30:06 +00:00
<p>You can use it to determine the type of YAML scalars that have a '?' non-specific tag, but using this feature is completely optional.</p>
<table border="1" class="docutils"><tr><th>Name</th><th>RegEx</th></tr>
<tr><td><tt class="docutils literal"><span class="pre">yTypeInteger</span></tt></td><td><tt class="docutils literal"><span class="pre">0 | -? [1-9] [0-9]*</span></tt></td></tr>
<tr><td><tt class="docutils literal"><span class="pre">yTypeFloat</span></tt></td><td><tt class="docutils literal"><span class="pre">-? [1-9] ( \. [0-9]* [1-9] )? ( e [-+] [1-9] [0-9]* )?</span></tt></td></tr>
<tr><td><tt class="docutils literal"><span class="pre">yTypeFloatInf</span></tt></td><td><tt class="docutils literal"><span class="pre">-? \. (inf | Inf | INF)</span></tt></td></tr>
<tr><td><tt class="docutils literal"><span class="pre">yTypeFloatNaN</span></tt></td><td><tt class="docutils literal"><span class="pre">-? \. (nan | NaN | NAN)</span></tt></td></tr>
<tr><td><tt class="docutils literal"><span class="pre">yTypeBoolTrue</span></tt></td><td><tt class="docutils literal"><span class="pre">y|Y|yes|Yes|YES|true|True|TRUE|on|On|ON</span></tt></td></tr>
<tr><td><tt class="docutils literal"><span class="pre">yTypeBoolFalse</span></tt></td><td><tt class="docutils literal"><span class="pre">n|N|no|No|NO|false|False|FALSE|off|Off|OFF</span></tt></td></tr>
<tr><td><tt class="docutils literal"><span class="pre">yTypeNull</span></tt></td><td><tt class="docutils literal"><span class="pre">~ | null | Null | NULL</span></tt></td></tr>
<tr><td><tt class="docutils literal"><span class="pre">yTypeUnknown</span></tt></td><td><tt class="docutils literal"><span class="pre">*</span></tt></td></tr>
2016-01-24 17:30:06 +00:00
</table>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L27"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="YamlStreamEventKind"><a name="YamlStreamEventKind"></a><pre><span class="Identifier">YamlStreamEventKind</span> <span class="Other">=</span> <span class="Keyword">enum</span>
<span class="Identifier">yamlStartDocument</span><span class="Other">,</span> <span class="Identifier">yamlEndDocument</span><span class="Other">,</span> <span class="Identifier">yamlStartMap</span><span class="Other">,</span> <span class="Identifier">yamlEndMap</span><span class="Other">,</span> <span class="Identifier">yamlStartSequence</span><span class="Other">,</span>
<span class="Identifier">yamlEndSequence</span><span class="Other">,</span> <span class="Identifier">yamlScalar</span><span class="Other">,</span> <span class="Identifier">yamlAlias</span></pre></dt>
<dd>
Kinds of YAML events that may occur in an <tt class="docutils literal"><span class="pre">YamlStream</span></tt>. Event kinds are discussed in <tt class="docutils literal"><span class="pre">YamlStreamEvent</span></tt>.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L51"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="TagId"><a name="TagId"></a><pre><span class="Identifier">TagId</span> <span class="Other">=</span> <span class="Keyword">distinct</span> <span class="Identifier">int</span></pre></dt>
<dd>
2016-01-24 17:30:06 +00:00
<p>
A <tt class="docutils literal"><span class="pre">TagId</span></tt> identifies a tag URI, like for example <tt class="docutils literal"><span class="pre">&quot;tag:yaml.org,2002:str&quot;</span></tt>. The URI corresponding to a <tt class="docutils literal"><span class="pre">TagId</span></tt> can be queried from the <a class="reference external" href="#TagLibrary">TagLibrary</a> which was used to create this <tt class="docutils literal"><span class="pre">TagId</span></tt>; e.g. when you parse a YAML character stream, the <tt class="docutils literal"><span class="pre">TagLibrary</span></tt> of the parser is the one which generates the resulting <tt class="docutils literal"><span class="pre">TagId</span></tt> s.</p>
<p>URI strings are mapped to <tt class="docutils literal"><span class="pre">TagId</span></tt> s for efficiency reasons (you do not need to compare strings every time) and to be able to discover unknown tag URIs early in the parsing process.</p>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L57"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="AnchorId"><a name="AnchorId"></a><pre><span class="Identifier">AnchorId</span> <span class="Other">=</span> <span class="Keyword">distinct</span> <span class="Identifier">int</span></pre></dt>
<dd>
2016-01-24 17:30:06 +00:00
An <tt class="docutils literal"><span class="pre">AnchorId</span></tt> identifies an anchor in the current document. It becomes invalid as soon as the current document scope is invalidated (for example, because the parser yielded a <tt class="docutils literal"><span class="pre">yamlEndDocument</span></tt> event). <tt class="docutils literal"><span class="pre">AnchorId</span></tt> s exists because of efficiency, much like <tt class="docutils literal"><span class="pre">TagId</span></tt> s. The actual anchor name is a presentation detail and cannot be queried by the user.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L69"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="YamlStreamEvent"><a name="YamlStreamEvent"></a><pre><span class="Identifier">YamlStreamEvent</span> <span class="Other">=</span> <span class="Keyword">object</span>
<span class="Keyword">case</span> <span class="Identifier">kind</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">YamlStreamEventKind</span>
<span class="Keyword">of</span> <span class="Identifier">yamlStartMap</span><span class="Other">:</span>
<span class="Identifier">mapAnchor</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">AnchorId</span>
<span class="Identifier">mapTag</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">TagId</span>
<span class="Keyword">of</span> <span class="Identifier">yamlStartSequence</span><span class="Other">:</span>
<span class="Identifier">seqAnchor</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">AnchorId</span>
<span class="Identifier">seqTag</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">TagId</span>
<span class="Keyword">of</span> <span class="Identifier">yamlScalar</span><span class="Other">:</span>
<span class="Identifier">scalarAnchor</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">AnchorId</span>
<span class="Identifier">scalarTag</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">TagId</span>
<span class="Identifier">scalarContent</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">string</span>
<span class="Keyword">of</span> <span class="Identifier">yamlEndMap</span><span class="Other">,</span> <span class="Identifier">yamlEndSequence</span><span class="Other">,</span> <span class="Identifier">yamlStartDocument</span><span class="Other">,</span> <span class="Identifier">yamlEndDocument</span><span class="Other">:</span>
<span class="Keyword">nil</span>
<span class="Keyword">of</span> <span class="Identifier">yamlAlias</span><span class="Other">:</span>
<span class="Identifier">aliasTarget</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">AnchorId</span>
</pre></dt>
<dd>
<p>An element from a <a class="reference external" href="#YamlStream">YamlStream</a>. Events that start an object (<tt class="docutils literal"><span class="pre">yamlStartMap</span></tt>, <tt class="docutils literal"><span class="pre">yamlStartSequence</span></tt>, <tt class="docutils literal"><span class="pre">yamlScalar</span></tt>) have an optional anchor and a tag associated with them. The anchor will be set to <tt class="docutils literal"><span class="pre">yAnchorNone</span></tt> if it doesn't exist.</p>
2016-01-24 17:30:06 +00:00
<p>A non-existing tag in the YAML character stream will be resolved to the non-specific tags <tt class="docutils literal"><span class="pre">?</span></tt> or <tt class="docutils literal"><span class="pre">!</span></tt> according to the YAML specification. These are by convention mapped to the <tt class="docutils literal"><span class="pre">TagId</span></tt> s <tt class="docutils literal"><span class="pre">yTagQuestionMark</span></tt> and <tt class="docutils literal"><span class="pre">yTagExclamationMark</span></tt> respectively. Mapping is done by a <a class="reference external" href="#TagLibrary">TagLibrary</a>.</p>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L77"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-12 19:46:01 +00:00
<dt id="YamlStream"><a name="YamlStream"></a><pre><span class="Identifier">YamlStream</span> <span class="Other">=</span> <span class="Keyword">object</span>
<span class="Identifier">backend</span><span class="Other">:</span> <span class="Keyword">iterator</span> <span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span>
<span class="Identifier">peeked</span><span class="Other">:</span> <span class="Identifier">bool</span>
<span class="Identifier">cached</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span>
</pre></dt>
<dd>
<p>
2016-02-12 19:46:01 +00:00
A <tt class="docutils literal"><span class="pre">YamlStream</span></tt> is an iterator-like object that yields a well-formed stream of <tt class="docutils literal"><span class="pre">YamlStreamEvents</span></tt>. Well-formed means that every <tt class="docutils literal"><span class="pre">yamlStartMap</span></tt> is terminated by a <tt class="docutils literal"><span class="pre">yamlEndMap</span></tt>, every <tt class="docutils literal"><span class="pre">yamlStartSequence</span></tt> is terminated by a <tt class="docutils literal"><span class="pre">yamlEndSequence</span></tt> and every <tt class="docutils literal"><span class="pre">yamlStartDocument</span></tt> is terminated by a <tt class="docutils literal"><span class="pre">yamlEndDocument</span></tt>. Moreover, every emitted map has an even number of children.</p>
<p>The creator of a <tt class="docutils literal"><span class="pre">YamlStream</span></tt> is responsible for it being well-formed. A user of the stream may assume that it is well-formed and is not required to check for it. The procs in this module will always yield a well-formed <tt class="docutils literal"><span class="pre">YamlStream</span></tt> and expect it to be well-formed if it's an input.</p>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L104"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="TagLibrary"><a name="TagLibrary"></a><pre><span class="Identifier">TagLibrary</span> <span class="Other">=</span> <span class="Keyword">ref</span> <span class="Keyword">object</span>
<span class="Identifier">tags</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">Table</span><span class="Other">[</span><span class="Identifier">string</span><span class="Other">,</span> <span class="Identifier">TagId</span><span class="Other">]</span>
<span class="Identifier">nextCustomTagId</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">TagId</span>
<span class="Identifier">secondaryPrefix</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">string</span>
</pre></dt>
<dd>
2016-01-24 17:30:06 +00:00
<p>A <tt class="docutils literal"><span class="pre">TagLibrary</span></tt> maps tag URIs to <tt class="docutils literal"><span class="pre">TagId</span></tt> s.</p>
2016-02-15 18:51:05 +00:00
<p>When <a class="reference external" href="#YamlParser">YamlParser</a> encounters tags not existing in the tag library, it will use <a class="reference external" href="#registerUri,TagLibrary,string">registerUri</a> to add the tag to the library.</p>
2016-01-24 17:30:06 +00:00
<p>You can base your tag library on common tag libraries by initializing them with <a class="reference external" href="#initFailsafeTagLibrary">initFailsafeTagLibrary</a>, <a class="reference external" href="#initCoreTagLibrary">initCoreTagLibrary</a> or <a class="reference external" href="#initExtendedTagLibrary">initExtendedTagLibrary</a>.</p>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L124"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="WarningCallback"><a name="WarningCallback"></a><pre><span class="Identifier">WarningCallback</span> <span class="Other">=</span> <span class="Keyword">proc</span> <span class="Other">(</span><span class="Identifier">line</span><span class="Other">,</span> <span class="Identifier">column</span><span class="Other">:</span> <span class="Identifier">int</span><span class="Other">;</span> <span class="Identifier">lineContent</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">;</span> <span class="Identifier">message</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">)</span></pre></dt>
<dd>
Callback for parser warnings. Currently, this callback may be called on two occasions while parsing a YAML document stream:<ul class="simple"><li>If the version number in the <tt class="docutils literal"><span class="pre">%YAML</span></tt> directive does not match <tt class="docutils literal"><span class="pre">1.2</span></tt>.</li>
<li>If there is an unknown directive encountered.</li>
</ul>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L141"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="YamlParser"><a name="YamlParser"></a><pre><span class="Identifier">YamlParser</span> <span class="Other">=</span> <span class="Keyword">ref</span> <span class="Keyword">object</span>
<span class="Identifier">tagLib</span><span class="Other">:</span> <span class="Identifier">TagLibrary</span>
<span class="Identifier">anchors</span><span class="Other">:</span> <span class="Identifier">OrderedTable</span><span class="Other">[</span><span class="Identifier">string</span><span class="Other">,</span> <span class="Identifier">AnchorId</span><span class="Other">]</span>
2016-01-24 17:30:06 +00:00
<span class="Identifier">callback</span><span class="Other">:</span> <span class="Identifier">WarningCallback</span>
<span class="Identifier">lexer</span><span class="Other">:</span> <span class="Identifier">BaseLexer</span>
<span class="Identifier">tokenstart</span><span class="Other">:</span> <span class="Identifier">int</span>
</pre></dt>
<dd>
A parser object. Retains its <tt class="docutils literal"><span class="pre">TagLibrary</span></tt> across calls to <a class="reference external" href="#parse,YamlParser,Stream">parse</a>. Can be used to access anchor names while parsing a YAML character stream, but only until the document goes out of scope (i.e. until <tt class="docutils literal"><span class="pre">yamlEndDocument</span></tt> is yielded).
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L150"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="PresentationStyle"><a name="PresentationStyle"></a><pre><span class="Identifier">PresentationStyle</span> <span class="Other">=</span> <span class="Keyword">enum</span>
<span class="Identifier">psMinimal</span><span class="Other">,</span> <span class="Identifier">psCanonical</span><span class="Other">,</span> <span class="Identifier">psDefault</span><span class="Other">,</span> <span class="Identifier">psJson</span><span class="Other">,</span> <span class="Identifier">psBlockOnly</span></pre></dt>
<dd>
Different styles for YAML character stream output.<ul class="simple"><li><tt class="docutils literal"><span class="pre">ypsMinimal</span></tt>: Single-line flow-only output which tries to use as few characters as possible.</li>
<li><tt class="docutils literal"><span class="pre">ypsCanonical</span></tt>: Canonical YAML output. Writes all tags except for the non-specific tags <tt class="docutils literal"><span class="pre">?</span></tt> and <tt class="docutils literal"><span class="pre">!</span></tt>, uses flow style, quotes all string scalars.</li>
<li><tt class="docutils literal"><span class="pre">ypsDefault</span></tt>: Tries to be as human-readable as possible. Uses block style by default, but tries to condense maps and sequences which only contain scalar nodes into a single line using flow style.</li>
<li><tt class="docutils literal"><span class="pre">ypsJson</span></tt>: Omits the <tt class="docutils literal"><span class="pre">%YAML</span></tt> directive and the <tt class="docutils literal"><span class="pre">---</span></tt> marker. Uses flow style. Flattens anchors and aliases, omits tags. Output will be parseable as JSON. <tt class="docutils literal"><span class="pre">YamlStream</span></tt> to dump may only contain one document.</li>
<li><tt class="docutils literal"><span class="pre">ypsBlockOnly</span></tt>: Formats all output in block style, does not use flow style at all.</li>
</ul>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L162"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="TagStyle"><a name="TagStyle"></a><pre><span class="Identifier">TagStyle</span> <span class="Other">=</span> <span class="Keyword">enum</span>
<span class="Identifier">tsNone</span><span class="Other">,</span> <span class="Identifier">tsRootOnly</span><span class="Other">,</span> <span class="Identifier">tsAll</span></pre></dt>
<dd>
Whether object should be serialized with explicit tags.<ul class="simple"><li><tt class="docutils literal"><span class="pre">tsNone</span></tt>: No tags will be outputted unless necessary.</li>
<li><dl class="docutils"><dt><tt class="docutils literal"><span class="pre">tsRootOnly</span></tt>: A tag will only be outputted for the root tag and</dt>
<dd>where necessary.</dd>
</dl>
</li>
<li><tt class="docutils literal"><span class="pre">tsAll</span></tt>: Tags will be outputted for every object.</li>
</ul>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L182"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="AnchorStyle"><a name="AnchorStyle"></a><pre><span class="Identifier">AnchorStyle</span> <span class="Other">=</span> <span class="Keyword">enum</span>
<span class="Identifier">asNone</span><span class="Other">,</span> <span class="Identifier">asTidy</span><span class="Other">,</span> <span class="Identifier">asAlways</span></pre></dt>
<dd>
How ref object should be serialized.<ul class="simple"><li><dl class="docutils"><dt><tt class="docutils literal"><span class="pre">asNone</span></tt>: No anchors will be outputted. Values present at</dt>
<dd>multiple places in the content that should be serialized will be fully serialized at every occurence. If the content is cyclic, this will lead to an endless loop!</dd>
</dl>
</li>
<li><dl class="docutils"><dt><tt class="docutils literal"><span class="pre">asTidy</span></tt>: Anchors will only be generated for objects that</dt>
<dd>actually occur more than once in the content to be serialized. This is a bit slower and needs more memory than <tt class="docutils literal"><span class="pre">asAlways</span></tt>.</dd>
</dl>
</li>
<li><dl class="docutils"><dt><tt class="docutils literal"><span class="pre">asAlways</span></tt>: Achors will be generated for every ref object in the</dt>
<dd>content to be serialized, regardless of whether the object is referenced again afterwards</dd>
</dl>
</li>
</ul>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L191"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="ConstructionContext"><a name="ConstructionContext"></a><pre><span class="Identifier">ConstructionContext</span> <span class="Other">=</span> <span class="Keyword">ref</span> <span class="Keyword">object</span>
<span class="Identifier">refs</span><span class="Other">:</span> <span class="Identifier">Table</span><span class="Other">[</span><span class="Identifier">AnchorId</span><span class="Other">,</span> <span class="Identifier">pointer</span><span class="Other">]</span>
</pre></dt>
<dd>
Context information for the process of constructing Nim values from YAML.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L213"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="SerializationContext"><a name="SerializationContext"></a><pre><span class="Identifier">SerializationContext</span> <span class="Other">=</span> <span class="Keyword">ref</span> <span class="Keyword">object</span>
<span class="Identifier">refsList</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">RefNodeData</span><span class="Other">]</span>
<span class="Identifier">style</span><span class="Other">:</span> <span class="Identifier">AnchorStyle</span>
</pre></dt>
<dd>
Context information for the process of serializing YAML from Nim values.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L218"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="RawYamlStream"><a name="RawYamlStream"></a><pre><span class="Identifier">RawYamlStream</span> <span class="Other">=</span> <span class="Keyword">iterator</span> <span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
Stream of <tt class="docutils literal"><span class="pre">YamlStreamEvent``s returned by ``representObject</span></tt> procs.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L224"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="YamlLoadingError"><a name="YamlLoadingError"></a><pre><span class="Identifier">YamlLoadingError</span> <span class="Other">=</span> <span class="Keyword">object</span> <span class="Keyword">of</span> <span class="Identifier">Exception</span>
<span class="Identifier">line</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">int</span> <span class="Comment">## line number (1-based) where the error was encountered</span>
<span class="Identifier">column</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">int</span> <span class="Comment">## \</span>
<span class="Comment">## column number (1-based) where the error was encountered</span>
<span class="Identifier">lineContent</span><span class="Operator">*</span><span class="Other">:</span> <span class="Identifier">string</span> <span class="Comment">## \</span>
<span class="Comment">## content of the line where the error was encountered. Includes a</span>
<span class="Comment">## second line with a marker ``^`` at the position where the error</span>
2016-01-24 17:30:06 +00:00
<span class="Comment">## was encountered.</span>
</pre></dt>
<dd>
Base class for all exceptions that may be raised during the process of loading a YAML character stream.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L227"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="YamlParserError"><a name="YamlParserError"></a><pre><span class="Identifier">YamlParserError</span> <span class="Other">=</span> <span class="Keyword">object</span> <span class="Keyword">of</span> <span class="Identifier">YamlLoadingError</span>
</pre></dt>
<dd>
<p>A parser error is raised if the character stream that is parsed is not a valid YAML character stream. This stream cannot and will not be parsed wholly nor partially and all events that have been emitted by the YamlStream the parser provides should be discarded.</p>
<p>A character stream is invalid YAML if and only if at least one of the following conditions apply:</p>
<ul class="simple"><li>There are invalid characters in an element whose contents is restricted to a limited set of characters. For example, there are characters in a tag URI which are not valid URI characters.</li>
<li>An element has invalid indentation. This can happen for example if a block list element indicated by <tt class="docutils literal"><span class="pre">&quot;- &quot;</span></tt> is less indented than the element in the previous line, but there is no block sequence list open at the same indentation level.</li>
<li>The YAML structure is invalid. For example, an explicit block map indicated by <tt class="docutils literal"><span class="pre">&quot;? &quot;</span></tt> and <tt class="docutils literal"><span class="pre">&quot;: &quot;</span></tt> may not suddenly have a block sequence item (<tt class="docutils literal"><span class="pre">&quot;- &quot;</span></tt>) at the same indentation level. Another possible violation is closing a flow style object with the wrong closing character (<tt class="docutils literal"><span class="pre">}</span></tt>, <tt class="docutils literal"><span class="pre">]</span></tt>) or not closing it at all.</li>
<li>A custom tag shorthand is used that has not previously been declared with a <tt class="docutils literal"><span class="pre">%TAG</span></tt> directive.</li>
<li>Multiple tags or anchors are defined for the same node.</li>
<li>An alias is used which does not map to any anchor that has previously been declared in the same document.</li>
<li>An alias has a tag or anchor associated with it.</li>
</ul>
<p>Some elements in this list are vague. For a detailed description of a valid YAML character stream, see the YAML specification.</p>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L238"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="YamlPresenterJsonError"><a name="YamlPresenterJsonError"></a><pre><span class="Identifier">YamlPresenterJsonError</span> <span class="Other">=</span> <span class="Keyword">object</span> <span class="Keyword">of</span> <span class="Identifier">Exception</span>
</pre></dt>
<dd>
Exception that may be raised by the YAML presenter when it is instructed to output JSON, but is unable to do so. This may occur if:<ul class="simple"><li>The given <a class="reference external" href="#YamlStream">YamlStream</a> contains a map which has any non-scalar type as key.</li>
<li>Any float scalar bears a <tt class="docutils literal"><span class="pre">NaN</span></tt> or positive/negative infinity value</li>
</ul>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L269"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="YamlPresenterOutputError"><a name="YamlPresenterOutputError"></a><pre><span class="Identifier">YamlPresenterOutputError</span> <span class="Other">=</span> <span class="Keyword">object</span> <span class="Keyword">of</span> <span class="Identifier">Exception</span>
2016-01-24 17:30:06 +00:00
</pre></dt>
<dd>
2016-01-24 17:30:06 +00:00
Exception that may be raised by the YAML presenter. This occurs if writing character data to the output stream raises any exception. The error that has occurred is available from <tt class="docutils literal"><span class="pre">parent</span></tt>.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L278"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-12 19:46:01 +00:00
<dt id="YamlStreamError"><a name="YamlStreamError"></a><pre><span class="Identifier">YamlStreamError</span> <span class="Other">=</span> <span class="Keyword">object</span> <span class="Keyword">of</span> <span class="Identifier">Exception</span>
2016-01-24 17:30:06 +00:00
</pre></dt>
<dd>
2016-02-12 19:46:01 +00:00
Exception that may be raised by a <tt class="docutils literal"><span class="pre">YamlStream</span></tt> when the underlying backend raises an exception. The error that has occurred is available from <tt class="docutils literal"><span class="pre">parent</span></tt>.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L283"
class="link-seesrc" target="_blank">Source</a>
2016-01-24 17:30:06 +00:00
</dd>
<dt id="YamlConstructionError"><a name="YamlConstructionError"></a><pre><span class="Identifier">YamlConstructionError</span> <span class="Other">=</span> <span class="Keyword">object</span> <span class="Keyword">of</span> <span class="Identifier">YamlLoadingError</span>
</pre></dt>
<dd>
Exception that may be raised when constructing data objects from a <a class="reference external" href="#YamlStream">YamlStream</a>. The fields <tt class="docutils literal"><span class="pre">line</span></tt>, <tt class="docutils literal"><span class="pre">column</span></tt> and <tt class="docutils literal"><span class="pre">lineContent</span></tt> are only available if the costructing proc also does parsing, because otherwise this information is not available to the costruction proc.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L288"
class="link-seesrc" target="_blank">Source</a>
2016-01-24 17:30:06 +00:00
</dd>
2016-02-12 19:46:01 +00:00
</dl></section>
<section id="8">
<h1><a class="toc-backref" href="#8">Vars</a></h1>
<dl class="item">
<dt id="serializationTagLibrary"><a name="serializationTagLibrary"></a><pre><span class="Identifier">serializationTagLibrary</span> <span class="Other">=</span> <span class="Identifier">initSerializationTagLibrary</span><span class="Other">(</span><span class="Other">)</span></pre></dt>
2016-01-24 17:30:06 +00:00
<dd>
2016-02-12 19:46:01 +00:00
<p>
contains all local tags that are used for type serialization. Does not contain any of the specific default tags for sequences or maps, as those are not suited for Nim's static type system.</p>
<p>Should not be modified manually. Will be extended by <a class="reference external" href="#serializable,stmt,stmt">serializable</a>.</p>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L28"
class="link-seesrc" target="_blank">Source</a>
</dd>
</dl></section>
2016-02-15 18:51:05 +00:00
<section id="9">
<h1><a class="toc-backref" href="#9">Lets</a></h1>
<dl class="item">
2016-02-15 18:51:05 +00:00
<dt id="yTagNimChar"><a name="yTagNimChar"></a><pre><span class="Identifier">yTagNimChar</span> <span class="Other">=</span> <span class="Identifier">registerUri</span><span class="Other">(</span><span class="Identifier">serializationTagLibrary</span><span class="Other">,</span> <span class="StringLit">&quot;!nim:system:char&quot;</span><span class="Other">)</span></pre></dt>
<dd>
2016-02-15 18:51:05 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L61"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagNimInt8"><a name="yTagNimInt8"></a><pre><span class="Identifier">yTagNimInt8</span> <span class="Other">=</span> <span class="Identifier">registerUri</span><span class="Other">(</span><span class="Identifier">serializationTagLibrary</span><span class="Other">,</span> <span class="StringLit">&quot;!nim:system:int8&quot;</span><span class="Other">)</span></pre></dt>
<dd>
2016-02-15 18:51:05 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L61"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagNimInt16"><a name="yTagNimInt16"></a><pre><span class="Identifier">yTagNimInt16</span> <span class="Other">=</span> <span class="Identifier">registerUri</span><span class="Other">(</span><span class="Identifier">serializationTagLibrary</span><span class="Other">,</span> <span class="StringLit">&quot;!nim:system:int16&quot;</span><span class="Other">)</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L61"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagNimInt32"><a name="yTagNimInt32"></a><pre><span class="Identifier">yTagNimInt32</span> <span class="Other">=</span> <span class="Identifier">registerUri</span><span class="Other">(</span><span class="Identifier">serializationTagLibrary</span><span class="Other">,</span> <span class="StringLit">&quot;!nim:system:int32&quot;</span><span class="Other">)</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L61"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagNimInt64"><a name="yTagNimInt64"></a><pre><span class="Identifier">yTagNimInt64</span> <span class="Other">=</span> <span class="Identifier">registerUri</span><span class="Other">(</span><span class="Identifier">serializationTagLibrary</span><span class="Other">,</span> <span class="StringLit">&quot;!nim:system:int64&quot;</span><span class="Other">)</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L61"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagNimUInt8"><a name="yTagNimUInt8"></a><pre><span class="Identifier">yTagNimUInt8</span> <span class="Other">=</span> <span class="Identifier">registerUri</span><span class="Other">(</span><span class="Identifier">serializationTagLibrary</span><span class="Other">,</span> <span class="StringLit">&quot;!nim:system:uint8&quot;</span><span class="Other">)</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L61"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagNimUInt16"><a name="yTagNimUInt16"></a><pre><span class="Identifier">yTagNimUInt16</span> <span class="Other">=</span> <span class="Identifier">registerUri</span><span class="Other">(</span><span class="Identifier">serializationTagLibrary</span><span class="Other">,</span> <span class="StringLit">&quot;!nim:system:uint16&quot;</span><span class="Other">)</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L61"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagNimUInt32"><a name="yTagNimUInt32"></a><pre><span class="Identifier">yTagNimUInt32</span> <span class="Other">=</span> <span class="Identifier">registerUri</span><span class="Other">(</span><span class="Identifier">serializationTagLibrary</span><span class="Other">,</span> <span class="StringLit">&quot;!nim:system:uint32&quot;</span><span class="Other">)</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L61"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagNimUInt64"><a name="yTagNimUInt64"></a><pre><span class="Identifier">yTagNimUInt64</span> <span class="Other">=</span> <span class="Identifier">registerUri</span><span class="Other">(</span><span class="Identifier">serializationTagLibrary</span><span class="Other">,</span> <span class="StringLit">&quot;!nim:system:uint64&quot;</span><span class="Other">)</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L61"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagNimFloat32"><a name="yTagNimFloat32"></a><pre><span class="Identifier">yTagNimFloat32</span> <span class="Other">=</span> <span class="Identifier">registerUri</span><span class="Other">(</span><span class="Identifier">serializationTagLibrary</span><span class="Other">,</span> <span class="StringLit">&quot;!nim:system:float32&quot;</span><span class="Other">)</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L61"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagNimFloat64"><a name="yTagNimFloat64"></a><pre><span class="Identifier">yTagNimFloat64</span> <span class="Other">=</span> <span class="Identifier">registerUri</span><span class="Other">(</span><span class="Identifier">serializationTagLibrary</span><span class="Other">,</span> <span class="StringLit">&quot;!nim:system:float64&quot;</span><span class="Other">)</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L61"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
</dl></section>
<section id="10">
<h1><a class="toc-backref" href="#10">Consts</a></h1>
<dl class="item">
<dt id="yTagExclamationMark"><a name="yTagExclamationMark"></a><pre><span class="Identifier">yTagExclamationMark</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">0</span></pre></dt>
<dd>
<tt class="docutils literal"><span class="pre">!</span></tt> non-specific tag
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L298"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagQuestionMark"><a name="yTagQuestionMark"></a><pre><span class="Identifier">yTagQuestionMark</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">1</span></pre></dt>
<dd>
2016-02-15 18:51:05 +00:00
<tt class="docutils literal"><span class="pre">?</span></tt> non-specific tag
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L299"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagString"><a name="yTagString"></a><pre><span class="Identifier">yTagString</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">2</span></pre></dt>
<dd>
2016-02-15 18:51:05 +00:00
<a class="reference external" href="http://yaml.org/type/str.html ">!!str</a> tag
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L300"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagSequence"><a name="yTagSequence"></a><pre><span class="Identifier">yTagSequence</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">3</span></pre></dt>
<dd>
2016-02-15 18:51:05 +00:00
<a class="reference external" href="http://yaml.org/type/seq.html">!!seq</a> tag
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L302"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagMap"><a name="yTagMap"></a><pre><span class="Identifier">yTagMap</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">4</span></pre></dt>
<dd>
2016-02-15 18:51:05 +00:00
<a class="reference external" href="http://yaml.org/type/map.html">!!map</a> tag
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L304"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagNull"><a name="yTagNull"></a><pre><span class="Identifier">yTagNull</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">5</span></pre></dt>
<dd>
2016-02-15 18:51:05 +00:00
<a class="reference external" href="http://yaml.org/type/null.html">!!null</a> tag
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L309"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagBoolean"><a name="yTagBoolean"></a><pre><span class="Identifier">yTagBoolean</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">6</span></pre></dt>
<dd>
2016-02-15 18:51:05 +00:00
<a class="reference external" href="http://yaml.org/type/bool.html">!!bool</a> tag
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L311"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagInteger"><a name="yTagInteger"></a><pre><span class="Identifier">yTagInteger</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">7</span></pre></dt>
<dd>
2016-02-15 18:51:05 +00:00
<a class="reference external" href="http://yaml.org/type/int.html">!!int</a> tag
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L313"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagFloat"><a name="yTagFloat"></a><pre><span class="Identifier">yTagFloat</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">8</span></pre></dt>
<dd>
2016-02-15 18:51:05 +00:00
<a class="reference external" href="http://yaml.org/type/float.html">!!float</a> tag
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L315"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagOrderedMap"><a name="yTagOrderedMap"></a><pre><span class="Identifier">yTagOrderedMap</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">9</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
2016-02-15 18:51:05 +00:00
<a class="reference external" href="http://yaml.org/type/omap.html">!!omap</a> tag
2016-02-12 19:46:01 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L320"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagPairs"><a name="yTagPairs"></a><pre><span class="Identifier">yTagPairs</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">10</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
2016-02-15 18:51:05 +00:00
<a class="reference external" href="http://yaml.org/type/pairs.html">!!pairs</a> tag
2016-02-12 19:46:01 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L322"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagSet"><a name="yTagSet"></a><pre><span class="Identifier">yTagSet</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">11</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
2016-02-15 18:51:05 +00:00
<a class="reference external" href="http://yaml.org/type/set.html">!!set</a> tag
2016-02-12 19:46:01 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L324"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagBinary"><a name="yTagBinary"></a><pre><span class="Identifier">yTagBinary</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">12</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
2016-02-15 18:51:05 +00:00
<a class="reference external" href="http://yaml.org/type/binary.html">!!binary</a> tag
2016-02-12 19:46:01 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L326"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagMerge"><a name="yTagMerge"></a><pre><span class="Identifier">yTagMerge</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">13</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
2016-02-15 18:51:05 +00:00
<a class="reference external" href="http://yaml.org/type/merge.html">!!merge</a> tag
2016-02-12 19:46:01 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L328"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagTimestamp"><a name="yTagTimestamp"></a><pre><span class="Identifier">yTagTimestamp</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">14</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
2016-02-15 18:51:05 +00:00
<a class="reference external" href="http://yaml.org/type/timestamp.html">!!timestamp</a> tag
2016-02-12 19:46:01 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L330"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagValue"><a name="yTagValue"></a><pre><span class="Identifier">yTagValue</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">15</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
2016-02-15 18:51:05 +00:00
<a class="reference external" href="http://yaml.org/type/value.html">!!value</a> tag
2016-02-12 19:46:01 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L332"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yTagYaml"><a name="yTagYaml"></a><pre><span class="Identifier">yTagYaml</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">16</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
2016-02-15 18:51:05 +00:00
<a class="reference external" href="http://yaml.org/type/yaml.html">!!yaml</a> tag
2016-02-12 19:46:01 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L334"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yFirstCustomTagId"><a name="yFirstCustomTagId"></a><pre><span class="Identifier">yFirstCustomTagId</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="DecNumber">1000</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
2016-02-15 18:51:05 +00:00
The first <tt class="docutils literal"><span class="pre">TagId</span></tt> which should be assigned to an URI that does not exist in the <tt class="docutils literal"><span class="pre">YamlTagLibrary</span></tt> which is used for parsing.
2016-02-12 19:46:01 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L337"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yAnchorNone"><a name="yAnchorNone"></a><pre><span class="Identifier">yAnchorNone</span><span class="Other">:</span> <span class="Identifier">AnchorId</span> <span class="Other">=</span> <span class="DecNumber">-1</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
2016-02-15 18:51:05 +00:00
yielded when no anchor was defined for a YAML node
2016-02-12 19:46:01 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L341"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yamlTagRepositoryPrefix"><a name="yamlTagRepositoryPrefix"></a><pre><span class="Identifier">yamlTagRepositoryPrefix</span> <span class="Other">=</span> <span class="StringLit">&quot;tag:yaml.org,2002:&quot;</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
2016-02-15 18:51:05 +00:00
2016-02-12 19:46:01 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L344"
class="link-seesrc" target="_blank">Source</a>
</dd>
</dl></section>
<section id="12">
<h1><a class="toc-backref" href="#12">Procs</a></h1>
<dl class="item">
<dt id="=="><a name="==,TagId,TagId"></a><pre><span class="Keyword">proc</span> <span class="Identifier">`==`</span><span class="Other">(</span><span class="Identifier">left</span><span class="Other">,</span> <span class="Identifier">right</span><span class="Other">:</span> <span class="Identifier">TagId</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">bool</span> <span class="Other">{.</span><span class="Identifier">borrow</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L369"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="hash"><a name="hash,TagId"></a><pre><span class="Keyword">proc</span> <span class="Identifier">hash</span><span class="Other">(</span><span class="Identifier">id</span><span class="Other">:</span> <span class="Identifier">TagId</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Hash</span> <span class="Other">{.</span><span class="Identifier">borrow</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L371"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="=="><a name="==,AnchorId,AnchorId"></a><pre><span class="Keyword">proc</span> <span class="Identifier">`==`</span><span class="Other">(</span><span class="Identifier">left</span><span class="Other">,</span> <span class="Identifier">right</span><span class="Other">:</span> <span class="Identifier">AnchorId</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">bool</span> <span class="Other">{.</span><span class="Identifier">borrow</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L373"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="$"><a name="$,AnchorId"></a><pre><span class="Keyword">proc</span> <span class="Identifier">`$`</span><span class="Other">(</span><span class="Identifier">id</span><span class="Other">:</span> <span class="Identifier">AnchorId</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">string</span> <span class="Other">{.</span><span class="Identifier">borrow</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L374"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="hash"><a name="hash,AnchorId"></a><pre><span class="Keyword">proc</span> <span class="Identifier">hash</span><span class="Other">(</span><span class="Identifier">id</span><span class="Other">:</span> <span class="Identifier">AnchorId</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">Hash</span> <span class="Other">{.</span><span class="Identifier">borrow</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L375"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="$"><a name="$,TagId"></a><pre><span class="Keyword">proc</span> <span class="Identifier">`$`</span><span class="Other">(</span><span class="Identifier">id</span><span class="Other">:</span> <span class="Identifier">TagId</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">string</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/tagLibrary.nim#L7"
class="link-seesrc" target="_blank">Source</a>
2016-01-24 17:30:06 +00:00
</dd>
<dt id="initTagLibrary"><a name="initTagLibrary,"></a><pre><span class="Keyword">proc</span> <span class="Identifier">initTagLibrary</span><span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagLibrary</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
initializes the <tt class="docutils literal"><span class="pre">tags</span></tt> table and sets <tt class="docutils literal"><span class="pre">nextCustomTagId</span></tt> to <tt class="docutils literal"><span class="pre">yFirstCustomTagId</span></tt>.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/tagLibrary.nim#L29"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="registerUri"><a name="registerUri,TagLibrary,string"></a><pre><span class="Keyword">proc</span> <span class="Identifier">registerUri</span><span class="Other">(</span><span class="Identifier">tagLib</span><span class="Other">:</span> <span class="Identifier">TagLibrary</span><span class="Other">;</span> <span class="Identifier">uri</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
2016-01-24 17:30:06 +00:00
registers a custom tag URI with a <tt class="docutils literal"><span class="pre">TagLibrary</span></tt>. The URI will get the <tt class="docutils literal"><span class="pre">TagId</span></tt> <tt class="docutils literal"><span class="pre">nextCustomTagId</span></tt>, which will be incremented.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/tagLibrary.nim#L35"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="uri"><a name="uri,TagLibrary,TagId"></a><pre><span class="Keyword">proc</span> <span class="Identifier">uri</span><span class="Other">(</span><span class="Identifier">tagLib</span><span class="Other">:</span> <span class="Identifier">TagLibrary</span><span class="Other">;</span> <span class="Identifier">id</span><span class="Other">:</span> <span class="Identifier">TagId</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">string</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">KeyError</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
retrieve the URI a <tt class="docutils literal"><span class="pre">TagId</span></tt> maps to.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/tagLibrary.nim#L40"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="initFailsafeTagLibrary"><a name="initFailsafeTagLibrary,"></a><pre><span class="Keyword">proc</span> <span class="Identifier">initFailsafeTagLibrary</span><span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagLibrary</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
Contains only:<ul class="simple"><li><tt class="docutils literal"><span class="pre">!</span></tt></li>
<li><tt class="docutils literal"><span class="pre">?</span></tt></li>
<li><tt class="docutils literal"><span class="pre">!!str</span></tt></li>
<li><tt class="docutils literal"><span class="pre">!!map</span></tt></li>
<li><tt class="docutils literal"><span class="pre">!!seq</span></tt></li>
</ul>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/tagLibrary.nim#L46"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="initCoreTagLibrary"><a name="initCoreTagLibrary,"></a><pre><span class="Keyword">proc</span> <span class="Identifier">initCoreTagLibrary</span><span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagLibrary</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
2016-01-24 17:30:06 +00:00
Contains everything in <tt class="docutils literal"><span class="pre">initFailsafeTagLibrary</span></tt> plus:<ul class="simple"><li><tt class="docutils literal"><span class="pre">!!null</span></tt></li>
<li><tt class="docutils literal"><span class="pre">!!bool</span></tt></li>
<li><tt class="docutils literal"><span class="pre">!!int</span></tt></li>
<li><tt class="docutils literal"><span class="pre">!!float</span></tt></li>
</ul>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/tagLibrary.nim#L54"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="initExtendedTagLibrary"><a name="initExtendedTagLibrary,"></a><pre><span class="Keyword">proc</span> <span class="Identifier">initExtendedTagLibrary</span><span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagLibrary</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
2016-01-24 17:30:06 +00:00
Contains everything from <tt class="docutils literal"><span class="pre">initCoreTagLibrary</span></tt> plus:<ul class="simple"><li><tt class="docutils literal"><span class="pre">!!omap</span></tt></li>
<li><tt class="docutils literal"><span class="pre">!!pairs</span></tt></li>
<li><tt class="docutils literal"><span class="pre">!!set</span></tt></li>
<li><tt class="docutils literal"><span class="pre">!!binary</span></tt></li>
<li><tt class="docutils literal"><span class="pre">!!merge</span></tt></li>
<li><tt class="docutils literal"><span class="pre">!!timestamp</span></tt></li>
<li><tt class="docutils literal"><span class="pre">!!value</span></tt></li>
<li><tt class="docutils literal"><span class="pre">!!yaml</span></tt></li>
</ul>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/tagLibrary.nim#L61"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="=="><a name="==,YamlStreamEvent,YamlStreamEvent"></a><pre><span class="Keyword">proc</span> <span class="Identifier">`==`</span><span class="Other">(</span><span class="Identifier">left</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span><span class="Other">;</span> <span class="Identifier">right</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">bool</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
compares all existing fields of the given items
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/events.nim#L7"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="$"><a name="$,YamlStreamEvent"></a><pre><span class="Keyword">proc</span> <span class="Identifier">`$`</span><span class="Other">(</span><span class="Identifier">event</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">string</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
outputs a human-readable string describing the given event
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/events.nim#L26"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="startDocEvent"><a name="startDocEvent,"></a><pre><span class="Keyword">proc</span> <span class="Identifier">startDocEvent</span><span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/events.nim#L48"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="endDocEvent"><a name="endDocEvent,"></a><pre><span class="Keyword">proc</span> <span class="Identifier">endDocEvent</span><span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/events.nim#L51"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="startMapEvent"><a name="startMapEvent,TagId,AnchorId"></a><pre><span class="Keyword">proc</span> <span class="Identifier">startMapEvent</span><span class="Other">(</span><span class="Identifier">tag</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="Identifier">yTagQuestionMark</span><span class="Other">;</span> <span class="Identifier">anchor</span><span class="Other">:</span> <span class="Identifier">AnchorId</span> <span class="Other">=</span> <span class="Identifier">yAnchorNone</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span> <span class="Other">{.</span>
<span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/events.nim#L54"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="endMapEvent"><a name="endMapEvent,"></a><pre><span class="Keyword">proc</span> <span class="Identifier">endMapEvent</span><span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/events.nim#L58"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="startSeqEvent"><a name="startSeqEvent,TagId,AnchorId"></a><pre><span class="Keyword">proc</span> <span class="Identifier">startSeqEvent</span><span class="Other">(</span><span class="Identifier">tag</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="Identifier">yTagQuestionMark</span><span class="Other">;</span> <span class="Identifier">anchor</span><span class="Other">:</span> <span class="Identifier">AnchorId</span> <span class="Other">=</span> <span class="Identifier">yAnchorNone</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span> <span class="Other">{.</span>
<span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/events.nim#L61"
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="endSeqEvent"><a name="endSeqEvent,"></a><pre><span class="Keyword">proc</span> <span class="Identifier">endSeqEvent</span><span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/events.nim#L66"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="scalarEvent"><a name="scalarEvent,string,TagId,AnchorId"></a><pre><span class="Keyword">proc</span> <span class="Identifier">scalarEvent</span><span class="Other">(</span><span class="Identifier">content</span><span class="Other">:</span> <span class="Identifier">string</span> <span class="Other">=</span> <span class="StringLit">&quot;&quot;</span><span class="Other">;</span> <span class="Identifier">tag</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">=</span> <span class="Identifier">yTagQuestionMark</span><span class="Other">;</span>
<span class="Identifier">anchor</span><span class="Other">:</span> <span class="Identifier">AnchorId</span> <span class="Other">=</span> <span class="Identifier">yAnchorNone</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/events.nim#L69"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="aliasEvent"><a name="aliasEvent,AnchorId"></a><pre><span class="Keyword">proc</span> <span class="Identifier">aliasEvent</span><span class="Other">(</span><span class="Identifier">anchor</span><span class="Other">:</span> <span class="Identifier">AnchorId</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/events.nim#L74"
class="link-seesrc" target="_blank">Source</a>
2016-01-24 17:30:06 +00:00
</dd>
2016-02-12 19:46:01 +00:00
<dt id="constructJson"><a name="constructJson,YamlStream"></a><pre><span class="Keyword">proc</span> <span class="Identifier">constructJson</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">JsonNode</span><span class="Other">]</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
2016-01-24 17:30:06 +00:00
<p>Construct an in-memory JSON tree from a YAML event stream. The stream may not contain any tags apart from those in <tt class="docutils literal"><span class="pre">coreTagLibrary</span></tt>. Anchors and aliases will be resolved. Maps in the input must not contain non-scalars as keys. Each element of the result represents one document in the YAML stream.</p>
<p><strong>Warning:</strong> The special float values <tt class="docutils literal"><span class="pre">[+-]Inf</span></tt> and <tt class="docutils literal"><span class="pre">NaN</span></tt> will be parsed into Nim's JSON structure without error. However, they cannot be rendered to a JSON character stream, because these values are not part of the JSON specification. Nim's JSON implementation currently does not check for these values and will output invalid JSON when rendering one of these values into a JSON character stream.</p>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/json.nim#L81"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="loadToJson"><a name="loadToJson,Stream"></a><pre><span class="Keyword">proc</span> <span class="Identifier">loadToJson</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Identifier">Stream</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">JsonNode</span><span class="Other">]</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">IOError</span><span class="Other">,</span> <span class="Identifier">YamlParserError</span><span class="Other">,</span>
2016-02-12 19:46:01 +00:00
<span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">OutOfMemError</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
2016-01-24 17:30:06 +00:00
Uses <a class="reference external" href="#YamlParser">YamlParser</a> and <a class="reference external" href="#constructJson">constructJson</a> to construct an in-memory JSON tree from a YAML character stream.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/json.nim#L183"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-12 19:46:01 +00:00
<dt id="present"><a name="present,YamlStream,Stream,TagLibrary,PresentationStyle,int"></a><pre><span class="Keyword">proc</span> <span class="Identifier">present</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">target</span><span class="Other">:</span> <span class="Identifier">Stream</span><span class="Other">;</span> <span class="Identifier">tagLib</span><span class="Other">:</span> <span class="Identifier">TagLibrary</span><span class="Other">;</span>
2016-01-24 17:30:06 +00:00
<span class="Identifier">style</span><span class="Other">:</span> <span class="Identifier">PresentationStyle</span> <span class="Other">=</span> <span class="Identifier">psDefault</span><span class="Other">;</span> <span class="Identifier">indentationStep</span><span class="Other">:</span> <span class="Identifier">int</span> <span class="Other">=</span> <span class="DecNumber">2</span><span class="Other">)</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span>
2016-02-12 19:46:01 +00:00
<span class="Identifier">YamlPresenterJsonError</span><span class="Other">,</span> <span class="Identifier">YamlPresenterOutputError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">,</span>
2016-01-24 17:30:06 +00:00
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">,</span> <span class="Identifier">WriteIOEffect</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
2016-01-24 17:30:06 +00:00
Convert <tt class="docutils literal"><span class="pre">s</span></tt> to a YAML character stream and write it to <tt class="docutils literal"><span class="pre">target</span></tt>.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/presenter.nim#L163"
class="link-seesrc" target="_blank">Source</a>
2016-01-24 17:30:06 +00:00
</dd>
<dt id="transform"><a name="transform,Stream,Stream,PresentationStyle,int"></a><pre><span class="Keyword">proc</span> <span class="Identifier">transform</span><span class="Other">(</span><span class="Identifier">input</span><span class="Other">:</span> <span class="Identifier">Stream</span><span class="Other">;</span> <span class="Identifier">output</span><span class="Other">:</span> <span class="Identifier">Stream</span><span class="Other">;</span> <span class="Identifier">style</span><span class="Other">:</span> <span class="Identifier">PresentationStyle</span><span class="Other">;</span>
<span class="Identifier">indentationStep</span><span class="Other">:</span> <span class="Identifier">int</span> <span class="Other">=</span> <span class="DecNumber">2</span><span class="Other">)</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">IOError</span><span class="Other">,</span> <span class="Identifier">YamlParserError</span><span class="Other">,</span>
2016-02-12 19:46:01 +00:00
<span class="Identifier">YamlPresenterJsonError</span><span class="Other">,</span> <span class="Identifier">YamlPresenterOutputError</span><span class="Other">,</span> <span class="Identifier">OutOfMemError</span><span class="Other">]</span><span class="Other">,</span>
2016-01-24 17:30:06 +00:00
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">,</span> <span class="Identifier">WriteIOEffect</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
Parser <tt class="docutils literal"><span class="pre">input</span></tt> as YAML character stream and then dump it to <tt class="docutils literal"><span class="pre">output</span></tt> while resolving non-specific tags to the ones in the YAML core tag library.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/presenter.nim#L434"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="guessType"><a name="guessType,string"></a><pre><span class="Keyword">proc</span> <span class="Identifier">guessType</span><span class="Other">(</span><span class="Identifier">scalar</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TypeHint</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
2016-02-12 19:46:01 +00:00
Parse scalar string according to the RegEx table documented at <a class="reference external" href="#TypeHind">TypeHint</a>.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/hints.nim#L157"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="newYamlParser"><a name="newYamlParser,TagLibrary,WarningCallback"></a><pre><span class="Keyword">proc</span> <span class="Identifier">newYamlParser</span><span class="Other">(</span><span class="Identifier">tagLib</span><span class="Other">:</span> <span class="Identifier">TagLibrary</span> <span class="Other">=</span> <span class="Identifier">initExtendedTagLibrary</span><span class="Other">(</span><span class="Other">)</span><span class="Other">;</span>
<span class="Identifier">callback</span><span class="Other">:</span> <span class="Identifier">WarningCallback</span> <span class="Other">=</span> <span class="Keyword">nil</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlParser</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
2016-02-12 19:46:01 +00:00
Creates a YAML parser. if <tt class="docutils literal"><span class="pre">callback</span></tt> is not <tt class="docutils literal"><span class="pre">nil</span></tt>, it will be called whenever the parser yields a warning.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/fastparse.nim#L41"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="getLineNumber"><a name="getLineNumber,YamlParser"></a><pre><span class="Keyword">proc</span> <span class="Identifier">getLineNumber</span><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <span class="Identifier">YamlParser</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">int</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
2016-02-12 19:46:01 +00:00
Get the line number (1-based) of the recently yielded parser token. Useful for error reporting at later loading stages.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/fastparse.nim#L47"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="getColNumber"><a name="getColNumber,YamlParser"></a><pre><span class="Keyword">proc</span> <span class="Identifier">getColNumber</span><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <span class="Identifier">YamlParser</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">int</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
2016-02-12 19:46:01 +00:00
Get the column number (1-based) of the recently yielded parser token. Useful for error reporting at later parsing stages.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/fastparse.nim#L49"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-01-24 17:30:06 +00:00
<dt id="getLineContent"><a name="getLineContent,YamlParser,bool"></a><pre><span class="Keyword">proc</span> <span class="Identifier">getLineContent</span><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <span class="Identifier">YamlParser</span><span class="Other">;</span> <span class="Identifier">marker</span><span class="Other">:</span> <span class="Identifier">bool</span> <span class="Other">=</span> <span class="Identifier">true</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">string</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
2016-02-12 19:46:01 +00:00
Get the content of the input line containing the recently yielded parser token. Useful for error reporting at later parsing stages. The line will be terminated by <tt class="docutils literal"><span class="pre">&quot;\n&quot;</span></tt>. If <tt class="docutils literal"><span class="pre">marker</span></tt> is <tt class="docutils literal"><span class="pre">true</span></tt>, a second line will be returned containing a <tt class="docutils literal"><span class="pre">^</span></tt> at the position of the recent parser token.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/fastparse.nim#L51"
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-12 19:46:01 +00:00
<dt id="parse"><a name="parse,YamlParser,Stream"></a><pre><span class="Keyword">proc</span> <span class="Identifier">parse</span><span class="Other">(</span><span class="Identifier">p</span><span class="Other">:</span> <span class="Identifier">YamlParser</span><span class="Other">;</span> <span class="Identifier">s</span><span class="Other">:</span> <span class="Identifier">Stream</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStream</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">,</span> <span class="Identifier">ReadIOEffect</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
Parse the given stream as YAML character stream.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/fastparse.nim#L988"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="initYamlStream"><a name="initYamlStream,"></a><pre><span class="Keyword">proc</span> <span class="Identifier">initYamlStream</span><span class="Other">(</span><span class="Identifier">backend</span><span class="Other">:</span> <span class="Keyword">iterator</span> <span class="Other">(</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStream</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span>
2016-01-24 17:30:06 +00:00
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
2016-02-12 19:46:01 +00:00
Creates a new <tt class="docutils literal"><span class="pre">YamlStream</span></tt> that uses the given iterator as backend.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/streams.nim#L1"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="next"><a name="next,YamlStream"></a><pre><span class="Keyword">proc</span> <span class="Identifier">next</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
Get the next item of the stream. Requires <tt class="docutils literal"><span class="pre">finished(s) == true</span></tt>. If the backend yields an exception, that exception will be encapsulated into a <tt class="docutils literal"><span class="pre">YamlStreamError</span></tt>, which will be raised.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/streams.nim#L5"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="peek"><a name="peek,YamlStream"></a><pre><span class="Keyword">proc</span> <span class="Identifier">peek</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
Get the next item of the stream without advancing the stream. Requires <tt class="docutils literal"><span class="pre">finished(s) == true</span></tt>. Handles exceptions of the backend like <tt class="docutils literal"><span class="pre">next()</span></tt>.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/streams.nim#L25"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="peek="><a name="peek=,YamlStream,YamlStreamEvent"></a><pre><span class="Keyword">proc</span> <span class="Identifier">peek=</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">value</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span><span class="Other">)</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
Set the next item of the stream. Will replace a previously peeked item, if one exists.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/streams.nim#L31"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="finished"><a name="finished,YamlStream"></a><pre><span class="Keyword">proc</span> <span class="Identifier">finished</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">bool</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
<tt class="docutils literal"><span class="pre">true</span></tt> if no more items are available in the stream. Handles exceptions of the backend like <tt class="docutils literal"><span class="pre">next()</span></tt>.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/streams.nim#L35"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yamlTag"><a name="yamlTag,"></a><pre><span class="Keyword">proc</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Other">(</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">macros</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Other">|...)</span><span class="Other">(</span>
<span class="Identifier">typedesc</span><span class="Other">,</span> <span class="Identifier">char</span><span class="Other">)</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
2016-02-15 18:51:05 +00:00
2016-02-12 19:46:01 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L62"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yamlTag"><a name="yamlTag,_2"></a><pre><span class="Keyword">proc</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Other">(</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">macros</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Other">|...)</span><span class="Other">(</span>
<span class="Identifier">typedesc</span><span class="Other">,</span> <span class="Identifier">int8</span><span class="Other">)</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
2016-02-15 18:51:05 +00:00
2016-02-12 19:46:01 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L62"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yamlTag"><a name="yamlTag,_3"></a><pre><span class="Keyword">proc</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Other">(</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">macros</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Other">|...)</span><span class="Other">(</span>
<span class="Identifier">typedesc</span><span class="Other">,</span> <span class="Identifier">int16</span><span class="Other">)</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L62"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yamlTag"><a name="yamlTag,_4"></a><pre><span class="Keyword">proc</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Other">(</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">macros</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Other">|...)</span><span class="Other">(</span>
<span class="Identifier">typedesc</span><span class="Other">,</span> <span class="Identifier">int32</span><span class="Other">)</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L62"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yamlTag"><a name="yamlTag,_5"></a><pre><span class="Keyword">proc</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Other">(</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">macros</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Other">|...)</span><span class="Other">(</span>
<span class="Identifier">typedesc</span><span class="Other">,</span> <span class="Identifier">int64</span><span class="Other">)</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L62"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yamlTag"><a name="yamlTag,_6"></a><pre><span class="Keyword">proc</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Other">(</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">macros</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Other">|...)</span><span class="Other">(</span>
<span class="Identifier">typedesc</span><span class="Other">,</span> <span class="Identifier">uint8</span><span class="Other">)</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L62"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yamlTag"><a name="yamlTag,_7"></a><pre><span class="Keyword">proc</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Other">(</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">macros</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Other">|...)</span><span class="Other">(</span>
<span class="Identifier">typedesc</span><span class="Other">,</span> <span class="Identifier">uint16</span><span class="Other">)</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L62"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yamlTag"><a name="yamlTag,_8"></a><pre><span class="Keyword">proc</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Other">(</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">macros</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Other">|...)</span><span class="Other">(</span>
<span class="Identifier">typedesc</span><span class="Other">,</span> <span class="Identifier">uint32</span><span class="Other">)</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L62"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yamlTag"><a name="yamlTag,_9"></a><pre><span class="Keyword">proc</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Other">(</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">macros</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Other">|...)</span><span class="Other">(</span>
<span class="Identifier">typedesc</span><span class="Other">,</span> <span class="Identifier">uint64</span><span class="Other">)</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L62"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yamlTag"><a name="yamlTag,_10"></a><pre><span class="Keyword">proc</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Other">(</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">macros</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Other">|...)</span><span class="Other">(</span>
<span class="Identifier">typedesc</span><span class="Other">,</span> <span class="Identifier">float32</span><span class="Other">)</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L62"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="yamlTag"><a name="yamlTag,_11"></a><pre><span class="Keyword">proc</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Other">(</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">json</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">system</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">macros</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Operator">|</span><span class="Identifier">tables</span><span class="Operator">.</span><span class="Identifier">[]</span><span class="Other">|...)</span><span class="Other">(</span>
<span class="Identifier">typedesc</span><span class="Other">,</span> <span class="Identifier">float64</span><span class="Other">)</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L62"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="lazyLoadTag"><a name="lazyLoadTag,string"></a><pre><span class="Keyword">proc</span> <span class="Identifier">lazyLoadTag</span><span class="Other">(</span><span class="Identifier">uri</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
2016-02-15 18:51:05 +00:00
Internal function. Do not call explicitly.
2016-02-12 19:46:01 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L77"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="safeTagUri"><a name="safeTagUri,TagId"></a><pre><span class="Keyword">proc</span> <span class="Identifier">safeTagUri</span><span class="Other">(</span><span class="Identifier">id</span><span class="Other">:</span> <span class="Identifier">TagId</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">string</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
Internal function. Do not call explicitly.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L84"
2016-02-16 19:09:27 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="constructChild"><a name="constructChild,YamlStream,ConstructionContext,T"></a><pre><span class="Keyword">proc</span> <span class="Identifier">constructChild</span><span class="Other">[</span><span class="Identifier">T</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">T</span><span class="Other">)</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
Used for implementing <tt class="docutils literal"><span class="pre">constructObject</span></tt> on a non-scalar type. Call it for constructing child values of the object that is constructed. It will ensure correct tag and anchor on the input stream for the child object and then call <tt class="docutils literal"><span class="pre">constructObject</span></tt> on the child object.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L108"
2016-02-16 19:09:27 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="constructChild"><a name="constructChild,YamlStream,ConstructionContext,ref.O"></a><pre><span class="Keyword">proc</span> <span class="Identifier">constructChild</span><span class="Other">[</span><span class="Identifier">O</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Keyword">ref</span> <span class="Identifier">O</span><span class="Other">)</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
Used for implementing <tt class="docutils literal"><span class="pre">constructObject</span></tt> on a non-scalar type. Call it for constructing child values of the object that is constructed. It will handle anchors, aliases and nil values, and then call <tt class="docutils literal"><span class="pre">constructChild</span></tt> on the base type.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L116"
2016-02-15 18:51:05 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="yamlTag"><a name="yamlTag,typedesc[string]"></a><pre><span class="Keyword">proc</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Identifier">typedesc</span><span class="Other">[</span><span class="Identifier">string</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">noSideEffect</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L124"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="constructObject"><a name="constructObject,YamlStream,ConstructionContext,string"></a><pre><span class="Keyword">proc</span> <span class="Identifier">constructObject</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">string</span><span class="Other">)</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L127"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="representObject"><a name="representObject,string,TagStyle,SerializationContext"></a><pre><span class="Keyword">proc</span> <span class="Identifier">representObject</span><span class="Other">(</span><span class="Identifier">value</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">;</span> <span class="Identifier">ts</span><span class="Other">:</span> <span class="Identifier">TagStyle</span> <span class="Other">=</span> <span class="Identifier">tsNone</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">SerializationContext</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">RawYamlStream</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L134"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="constructObject"><a name="constructObject,YamlStream,ConstructionContext,T"></a><pre><span class="Keyword">proc</span> <span class="Identifier">constructObject</span><span class="Other">[</span><span class="Identifier">T</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">T</span><span class="Other">)</span> <span class="Other">{.</span>
2016-02-12 19:46:01 +00:00
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L139"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="representObject"><a name="representObject,T,TagStyle,SerializationContext"></a><pre><span class="Keyword">proc</span> <span class="Identifier">representObject</span><span class="Other">[</span><span class="Identifier">T</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">value</span><span class="Other">:</span> <span class="Identifier">T</span><span class="Other">;</span> <span class="Identifier">ts</span><span class="Other">:</span> <span class="Identifier">TagStyle</span> <span class="Other">=</span> <span class="Identifier">tsNone</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">SerializationContext</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">RawYamlStream</span> <span class="Other">{.</span>
2016-02-12 19:46:01 +00:00
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L151"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="constructObject"><a name="constructObject,YamlStream,ConstructionContext,T_2"></a><pre><span class="Keyword">proc</span> <span class="Identifier">constructObject</span><span class="Other">[</span><span class="Identifier">T</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">T</span><span class="Other">)</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L174"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="representObject"><a name="representObject,T,TagStyle,SerializationContext_2"></a><pre><span class="Keyword">proc</span> <span class="Identifier">representObject</span><span class="Other">[</span><span class="Identifier">T</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">value</span><span class="Other">:</span> <span class="Identifier">T</span><span class="Other">;</span> <span class="Identifier">ts</span><span class="Other">:</span> <span class="Identifier">TagStyle</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">SerializationContext</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">RawYamlStream</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L187"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="constructObject"><a name="constructObject,YamlStream,ConstructionContext,T_3"></a><pre><span class="Keyword">proc</span> <span class="Identifier">constructObject</span><span class="Other">[</span><span class="Identifier">T</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">T</span><span class="Other">)</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L199"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="representObject"><a name="representObject,T,TagStyle,SerializationContext_3"></a><pre><span class="Keyword">proc</span> <span class="Identifier">representObject</span><span class="Other">[</span><span class="Identifier">T</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">value</span><span class="Other">:</span> <span class="Identifier">T</span><span class="Other">;</span> <span class="Identifier">ts</span><span class="Other">:</span> <span class="Identifier">TagStyle</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">SerializationContext</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">RawYamlStream</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L223"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="yamlTag"><a name="yamlTag,typedesc[bool]"></a><pre><span class="Keyword">proc</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Identifier">typedesc</span><span class="Other">[</span><span class="Identifier">bool</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L240"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="constructObject"><a name="constructObject,YamlStream,ConstructionContext,bool"></a><pre><span class="Keyword">proc</span> <span class="Identifier">constructObject</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">bool</span><span class="Other">)</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L242"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="representObject"><a name="representObject,bool,TagStyle,SerializationContext"></a><pre><span class="Keyword">proc</span> <span class="Identifier">representObject</span><span class="Other">(</span><span class="Identifier">value</span><span class="Other">:</span> <span class="Identifier">bool</span><span class="Other">;</span> <span class="Identifier">ts</span><span class="Other">:</span> <span class="Identifier">TagStyle</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">SerializationContext</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">RawYamlStream</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L256"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="constructObject"><a name="constructObject,YamlStream,ConstructionContext,char"></a><pre><span class="Keyword">proc</span> <span class="Identifier">constructObject</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">char</span><span class="Other">)</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L262"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="representObject"><a name="representObject,char,TagStyle,SerializationContext"></a><pre><span class="Keyword">proc</span> <span class="Identifier">representObject</span><span class="Other">(</span><span class="Identifier">value</span><span class="Other">:</span> <span class="Identifier">char</span><span class="Other">;</span> <span class="Identifier">ts</span><span class="Other">:</span> <span class="Identifier">TagStyle</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">SerializationContext</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">RawYamlStream</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">,</span> <span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L274"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="yamlTag"><a name="yamlTag,typedesc[seq[I]]"></a><pre><span class="Keyword">proc</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Identifier">I</span><span class="Other">,</span> <span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Identifier">typedesc</span><span class="Other">[</span><span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">I</span><span class="Other">]</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L279"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="constructObject"><a name="constructObject,YamlStream,ConstructionContext,seq[T]"></a><pre><span class="Keyword">proc</span> <span class="Identifier">constructObject</span><span class="Other">[</span><span class="Identifier">T</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">T</span><span class="Other">]</span><span class="Other">)</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L283"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="representObject"><a name="representObject,seq[T],TagStyle,SerializationContext"></a><pre><span class="Keyword">proc</span> <span class="Identifier">representObject</span><span class="Other">[</span><span class="Identifier">T</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">value</span><span class="Other">:</span> <span class="Identifier">seq</span><span class="Other">[</span><span class="Identifier">T</span><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">ts</span><span class="Other">:</span> <span class="Identifier">TagStyle</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">SerializationContext</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">RawYamlStream</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L296"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="yamlTag"><a name="yamlTag,typedesc[Table[K,V]]"></a><pre><span class="Keyword">proc</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Identifier">K</span><span class="Other">,</span> <span class="Identifier">V</span><span class="Other">,</span> <span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Identifier">typedesc</span><span class="Other">[</span><span class="Identifier">Table</span><span class="Other">[</span><span class="Identifier">K</span><span class="Other">,</span> <span class="Identifier">V</span><span class="Other">]</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L311"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="constructObject"><a name="constructObject,YamlStream,ConstructionContext,Table[K,V]"></a><pre><span class="Keyword">proc</span> <span class="Identifier">constructObject</span><span class="Other">[</span><span class="Identifier">K</span><span class="Other">,</span> <span class="Identifier">V</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span>
<span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">Table</span><span class="Other">[</span><span class="Identifier">K</span><span class="Other">,</span> <span class="Identifier">V</span><span class="Other">]</span><span class="Other">)</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L326"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="representObject"><a name="representObject,Table[K,V],TagStyle,SerializationContext"></a><pre><span class="Keyword">proc</span> <span class="Identifier">representObject</span><span class="Other">[</span><span class="Identifier">K</span><span class="Other">,</span> <span class="Identifier">V</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">value</span><span class="Other">:</span> <span class="Identifier">Table</span><span class="Other">[</span><span class="Identifier">K</span><span class="Other">,</span> <span class="Identifier">V</span><span class="Other">]</span><span class="Other">;</span> <span class="Identifier">ts</span><span class="Other">:</span> <span class="Identifier">TagStyle</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">SerializationContext</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">RawYamlStream</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L343"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="constructObject"><a name="constructObject,YamlStream,ConstructionContext,O"></a><pre><span class="Keyword">proc</span> <span class="Identifier">constructObject</span><span class="Other">[</span><span class="Identifier">O</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">O</span><span class="Other">)</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L384"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="representObject"><a name="representObject,O,TagStyle,SerializationContext"></a><pre><span class="Keyword">proc</span> <span class="Identifier">representObject</span><span class="Other">[</span><span class="Identifier">O</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">value</span><span class="Other">:</span> <span class="Identifier">O</span><span class="Other">;</span> <span class="Identifier">ts</span><span class="Other">:</span> <span class="Identifier">TagStyle</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">SerializationContext</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">RawYamlStream</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L404"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="constructObject"><a name="constructObject,YamlStream,ConstructionContext,O_2"></a><pre><span class="Keyword">proc</span> <span class="Identifier">constructObject</span><span class="Other">[</span><span class="Identifier">O</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">O</span><span class="Other">)</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L419"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="representObject"><a name="representObject,O,TagStyle,SerializationContext_2"></a><pre><span class="Keyword">proc</span> <span class="Identifier">representObject</span><span class="Other">[</span><span class="Identifier">O</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">value</span><span class="Other">:</span> <span class="Identifier">O</span><span class="Other">;</span> <span class="Identifier">ts</span><span class="Other">:</span> <span class="Identifier">TagStyle</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">SerializationContext</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">RawYamlStream</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L433"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="yamlTag"><a name="yamlTag,typedesc[ref.O]"></a><pre><span class="Keyword">proc</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Identifier">O</span><span class="Other">,</span> <span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Identifier">typedesc</span><span class="Other">[</span><span class="Keyword">ref</span> <span class="Identifier">O</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span> <span class="Other">{.</span><span class="Identifier">inline</span><span class="Other">,</span> <span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L438"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-16 19:09:27 +00:00
<dt id="constructChild"><a name="constructChild,YamlStream,ConstructionContext,T_2"></a><pre><span class="Keyword">proc</span> <span class="Identifier">constructChild</span><span class="Other">[</span><span class="Identifier">T</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">T</span><span class="Other">)</span> <span class="Other">{.</span>
2016-02-12 19:46:01 +00:00
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
2016-02-16 19:09:27 +00:00
Used for implementing <tt class="docutils literal"><span class="pre">constructObject</span></tt> on a non-scalar type. Call it for constructing child values of the object that is constructed. It will ensure correct tag and anchor on the input stream for the child object and then call <tt class="docutils literal"><span class="pre">constructObject</span></tt> on the child object.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L440"
2016-02-16 19:09:27 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="constructChild"><a name="constructChild,YamlStream,ConstructionContext,ref.O_2"></a><pre><span class="Keyword">proc</span> <span class="Identifier">constructChild</span><span class="Other">[</span><span class="Identifier">O</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Keyword">ref</span> <span class="Identifier">O</span><span class="Other">)</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
Used for implementing <tt class="docutils literal"><span class="pre">constructObject</span></tt> on a non-scalar type. Call it for constructing child values of the object that is constructed. It will handle anchors, aliases and nil values, and then call <tt class="docutils literal"><span class="pre">constructChild</span></tt> on the base type.
2016-02-12 19:46:01 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L466"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="representObject"><a name="representObject,ref.O,TagStyle,SerializationContext"></a><pre><span class="Keyword">proc</span> <span class="Identifier">representObject</span><span class="Other">[</span><span class="Identifier">O</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">value</span><span class="Other">:</span> <span class="Keyword">ref</span> <span class="Identifier">O</span><span class="Other">;</span> <span class="Identifier">ts</span><span class="Other">:</span> <span class="Identifier">TagStyle</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">SerializationContext</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">RawYamlStream</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L506"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="construct"><a name="construct,YamlStream,T"></a><pre><span class="Keyword">proc</span> <span class="Identifier">construct</span><span class="Other">[</span><span class="Identifier">T</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">target</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">T</span><span class="Other">)</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
Construct a Nim value from a YAML stream.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L550"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="load"><a name="load,Stream,K"></a><pre><span class="Keyword">proc</span> <span class="Identifier">load</span><span class="Other">[</span><span class="Identifier">K</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">input</span><span class="Other">:</span> <span class="Identifier">Stream</span><span class="Other">;</span> <span class="Identifier">target</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">K</span><span class="Other">)</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlConstructionError</span><span class="Other">,</span> <span class="Identifier">IOError</span><span class="Other">,</span>
<span class="Identifier">YamlParserError</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
Load a Nim value from a YAML character stream.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L570"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="represent"><a name="represent,T,TagStyle,AnchorStyle"></a><pre><span class="Keyword">proc</span> <span class="Identifier">represent</span><span class="Other">[</span><span class="Identifier">T</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">value</span><span class="Other">:</span> <span class="Identifier">T</span><span class="Other">;</span> <span class="Identifier">ts</span><span class="Other">:</span> <span class="Identifier">TagStyle</span> <span class="Other">=</span> <span class="Identifier">tsRootOnly</span><span class="Other">;</span> <span class="Identifier">a</span><span class="Other">:</span> <span class="Identifier">AnchorStyle</span> <span class="Other">=</span> <span class="Identifier">asTidy</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStream</span> <span class="Other">{.</span>
<span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
Represent a Nim value as <tt class="docutils literal"><span class="pre">YamlStream</span></tt>.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L617"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="dump"><a name="dump,K,Stream,PresentationStyle,TagStyle,AnchorStyle,int"></a><pre><span class="Keyword">proc</span> <span class="Identifier">dump</span><span class="Other">[</span><span class="Identifier">K</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">value</span><span class="Other">:</span> <span class="Identifier">K</span><span class="Other">;</span> <span class="Identifier">target</span><span class="Other">:</span> <span class="Identifier">Stream</span><span class="Other">;</span> <span class="Identifier">style</span><span class="Other">:</span> <span class="Identifier">PresentationStyle</span> <span class="Other">=</span> <span class="Identifier">psDefault</span><span class="Other">;</span>
<span class="Identifier">tagStyle</span><span class="Other">:</span> <span class="Identifier">TagStyle</span> <span class="Other">=</span> <span class="Identifier">tsRootOnly</span><span class="Other">;</span> <span class="Identifier">anchorStyle</span><span class="Other">:</span> <span class="Identifier">AnchorStyle</span> <span class="Other">=</span> <span class="Identifier">asTidy</span><span class="Other">;</span>
<span class="Identifier">indentationStep</span><span class="Other">:</span> <span class="Identifier">int</span> <span class="Other">=</span> <span class="DecNumber">2</span><span class="Other">)</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlPresenterJsonError</span><span class="Other">,</span>
<span class="Identifier">YamlPresenterOutputError</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
Dump a Nim value as YAML character stream.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L657"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
</dl></section>
<section id="14">
<h1><a class="toc-backref" href="#14">Iterators</a></h1>
<dl class="item">
<dt id="items"><a name="items.i,YamlStream"></a><pre><span class="Keyword">iterator</span> <span class="Identifier">items</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span> <span class="Other">{.</span><span class="Identifier">raises</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">YamlStreamError</span><span class="Other">]</span><span class="Other">,</span>
<span class="Identifier">tags</span><span class="Other">:</span> <span class="Other">[</span><span class="Identifier">RootEffect</span><span class="Other">]</span><span class="Other">.}</span></pre></dt>
<dd>
Iterate over all items of the stream. You may not use <tt class="docutils literal"><span class="pre">peek()</span></tt> on the stream while iterating.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/yaml.nim#L394"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
</dl></section>
2016-02-16 19:09:27 +00:00
<section id="17">
<h1><a class="toc-backref" href="#17">Templates</a></h1>
2016-02-12 19:46:01 +00:00
<dl class="item">
2016-02-16 19:09:27 +00:00
<dt id="presentTag"><a name="presentTag.t,typedesc,TagStyle"></a><pre><span class="Keyword">template</span> <span class="Identifier">presentTag</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">t</span><span class="Other">:</span> <span class="Identifier">typedesc</span><span class="Other">;</span> <span class="Identifier">ts</span><span class="Other">:</span> <span class="Identifier">TagStyle</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">TagId</span></pre></dt>
2016-02-12 19:46:01 +00:00
<dd>
2016-02-16 19:09:27 +00:00
2016-02-12 19:46:01 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L47"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-15 18:51:05 +00:00
<dt id="setTagUriForType"><a name="setTagUriForType.t,typedesc,string"></a><pre><span class="Keyword">template</span> <span class="Identifier">setTagUriForType</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">t</span><span class="Other">:</span> <span class="Identifier">typedesc</span><span class="Other">;</span> <span class="Identifier">uri</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">stmt</span></pre></dt>
<dd>
Associate the given uri with a certain type. This uri is used as YAML tag when loading and dumping values of this type.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L50"
2016-02-15 18:51:05 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="setTagUriForType"><a name="setTagUriForType.t,typedesc,string,expr"></a><pre><span class="Keyword">template</span> <span class="Identifier">setTagUriForType</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">t</span><span class="Other">:</span> <span class="Identifier">typedesc</span><span class="Other">;</span> <span class="Identifier">uri</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">;</span> <span class="Identifier">idName</span><span class="Other">:</span> <span class="Identifier">expr</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">stmt</span></pre></dt>
<dd>
Like <a class="reference external" href="#setTagUriForType,typedesc,string">setTagUriForType</a>, but lets you choose a symbol for the <a class="reference external" href="#TagId">TagId</a> of the uri. This is only necessary if you want to implement serialization / construction yourself.
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L57"
2016-02-16 19:09:27 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="constructScalarItem"><a name="constructScalarItem.t,YamlStream,YamlStreamEvent,string,stmt"></a><pre><span class="Keyword">template</span> <span class="Identifier">constructScalarItem</span><span class="Other">(</span><span class="Identifier">bs</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">item</span><span class="Other">:</span> <span class="Identifier">YamlStreamEvent</span><span class="Other">;</span> <span class="Identifier">name</span><span class="Other">:</span> <span class="Identifier">string</span><span class="Other">;</span>
<span class="Identifier">content</span><span class="Other">:</span> <span class="Identifier">stmt</span><span class="Other">)</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L95"
2016-02-15 18:51:05 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
2016-02-12 19:46:01 +00:00
<dt id="constructObject"><a name="constructObject.t,YamlStream,ConstructionContext,int"></a><pre><span class="Keyword">template</span> <span class="Identifier">constructObject</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">int</span><span class="Other">)</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L146"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="representObject"><a name="representObject.t,int,TagStyle,SerializationContext"></a><pre><span class="Keyword">template</span> <span class="Identifier">representObject</span><span class="Other">(</span><span class="Identifier">value</span><span class="Other">:</span> <span class="Identifier">int</span><span class="Other">;</span> <span class="Identifier">tagStyle</span><span class="Other">:</span> <span class="Identifier">TagStyle</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">SerializationContext</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">RawYamlStream</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L157"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="constructObject"><a name="constructObject.t,YamlStream,ConstructionContext,uint"></a><pre><span class="Keyword">template</span> <span class="Identifier">constructObject</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">uint</span><span class="Other">)</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L181"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="representObject"><a name="representObject.t,uint,TagStyle,SerializationContext"></a><pre><span class="Keyword">template</span> <span class="Identifier">representObject</span><span class="Other">(</span><span class="Identifier">value</span><span class="Other">:</span> <span class="Identifier">uint</span><span class="Other">;</span> <span class="Identifier">ts</span><span class="Other">:</span> <span class="Identifier">TagStyle</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">SerializationContext</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">RawYamlStream</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L193"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="constructObject"><a name="constructObject.t,YamlStream,ConstructionContext,float"></a><pre><span class="Keyword">template</span> <span class="Identifier">constructObject</span><span class="Other">(</span><span class="Identifier">s</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">YamlStream</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">ConstructionContext</span><span class="Other">;</span> <span class="Identifier">result</span><span class="Other">:</span> <span class="Keyword">var</span> <span class="Identifier">float</span><span class="Other">)</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L219"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="representObject"><a name="representObject.t,float,TagStyle,SerializationContext"></a><pre><span class="Keyword">template</span> <span class="Identifier">representObject</span><span class="Other">(</span><span class="Identifier">value</span><span class="Other">:</span> <span class="Identifier">float</span><span class="Other">;</span> <span class="Identifier">tagStyle</span><span class="Other">:</span> <span class="Identifier">TagStyle</span><span class="Other">;</span> <span class="Identifier">c</span><span class="Other">:</span> <span class="Identifier">SerializationContext</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">RawYamlStream</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L236"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="yamlTag"><a name="yamlTag.t,typedesc[]"></a><pre><span class="Keyword">template</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Identifier">typedesc</span><span class="Other">[</span><span class="Keyword">object</span> <span class="Operator">|</span> <span class="Keyword">enum</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">expr</span></pre></dt>
<dd>
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L363"
2016-02-12 19:46:01 +00:00
class="link-seesrc" target="_blank">Source</a>
</dd>
<dt id="yamlTag"><a name="yamlTag.t,typedesc[]_2"></a><pre><span class="Keyword">template</span> <span class="Identifier">yamlTag</span><span class="Other">[</span><span class="Other">]</span><span class="Other">(</span><span class="Identifier">T</span><span class="Other">:</span> <span class="Identifier">typedesc</span><span class="Other">[</span><span class="Keyword">tuple</span><span class="Other">]</span><span class="Other">)</span><span class="Other">:</span> <span class="Identifier">expr</span></pre></dt>
<dd>
2016-01-24 17:30:06 +00:00
&nbsp;&nbsp;<a
2016-02-16 19:45:09 +00:00
href="https://github.com/flyx/NimYAML/blob/a028b43858949bfe7eee1d7dc61c87d51522d2a4/private/serialization.nim#L371"
class="link-seesrc" target="_blank">Source</a>
</dd>
</dl></section>
</div>
</div>
<div class="row">
<div class="twelve-columns footer">
<span class="nim-sprite"></span>
<br/>
2016-02-16 19:45:09 +00:00
<small>Made with Nim. Generated: 2016-02-16 20:44:55 UTC</small>
</div>
</div>
</div>
</article>
</body>
</html>