NimYAML/doc/processing.svg

190 lines
8.5 KiB
XML

<svg version="1.1"
baseProfile="full"
width="600" height="420"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink">
<defs>
<marker id="Triangle" viewBox="0 0 10 10" refX="1" refY="5"
markerWidth="6" markerHeight="6" orient="auto">
<path d="M 0 0 L 10 5 L 0 10 z" />
</marker>
<g id="box">
<rect x="0" y="0" width="120" height="60" stroke="black" fill="white" stroke-width="2"/>
</g>
<g id="atomic-right-long">
<rect x="30" y="5" width="100" height="30" stroke="black" fill="white" stroke-width="1"/>
<path d="M 0 50 v -20 q 0 -10 10 -10 h 20" fill="transparent" stroke="black"/>
<path d="M 130 20 h 20 q 10 0 10 10" fill="transparent" stroke="black"/>
<line x1="160" y1="30" x2="160" y2="44" stroke="black" marker-end="url(#Triangle)"/>
</g>
<g id="atomic-right">
<rect x="30" y="5" width="80" height="30" stroke="black" fill="white" stroke-width="1"/>
<path d="M 5 50 v -20 q 0 -10 10 -10 h 15" fill="transparent" stroke="black"/>
<path d="M 110 20 h 15 q 10 0 10 10" fill="transparent" stroke="black"/>
<line x1="135" y1="30" x2="135" y2="44" stroke="black" marker-end="url(#Triangle)"/>
</g>
<g id="atomic-left-long">
<rect x="30" y="15" width="100" height="30" stroke="black" fill="white" stroke-width="1"/>
<line x1="0" y1="20" x2="0" y2="6" stroke="black" marker-end="url(#Triangle)"/>
<path d="M 0 20 q 0 10 10 10 h 20" fill="transparent" stroke="black"/>
<path d="M 130 30 h 20 q 10 0 10 -10 v -20" fill="transparent" stroke="black"/>
</g>
<g id="atomic-left">
<rect x="30" y="15" width="80" height="30" stroke="black" fill="white" stroke-width="1"/>
<line x1="5" y1="20" x2="5" y2="6" stroke="black" marker-end="url(#Triangle)"/>
<path d="M 5 20 q 0 10 10 10 h 15" fill="transparent" stroke="black"/>
<path d="M 110 30 h 15 q 10 0 10 -10 v -20" fill="transparent" stroke="black"/>
</g>
<g id="skipping-right">
<rect x="125" y="5" width="100" height="30" stroke="black" fill="white" stroke-width="1"/>
<path d="M 0 90 v -60 q 0 -10 10 -10 h 115" fill="transparent" stroke="black"/>
<path d="M 225 20 h 90 q 10 0 10 10" fill="transparent" stroke="black"/>
<line x1="325" y1="30" x2="325" y2="84" stroke="black" marker-end="url(#Triangle)"/>
</g>
<g id="skipping-left">
<rect x="125" y="55" width="100" height="30" stroke="black" fill="white" stroke-width="1"/>
<line x1="0" y1="60" x2="0" y2="6" stroke="black" marker-end="url(#Triangle)"/>
<path d="M 0 60 q 0 10 10 10 h 115" fill="transparent" stroke="black"/>
<path d="M 225 70 h 90 q 10 0 10 -10 v -60" fill="transparent" stroke="black"/>
</g>
<g id="dom-right">
<rect x="330" y="45" width="100" height="30" stroke="black" fill="white" stroke-width="1"/>
<line x1="170" y1="60" x2="330" y2="60" stroke="black" stroke-width="2"/>
<line x1="430" y1="60" x2="583" y2="60" stroke="black" stroke-width="2" marker-end="url(#Triangle)"/>
</g>
<g id="dom-left">
<rect x="330" y="5" width="100" height="30" stroke="black" fill="white" stroke-width="1"/>
<line x1="330" y1="20" x2="182" y2="20" stroke="black" stroke-width="2" marker-end="url(#Triangle)"/>
<line x1="430" y1="20" x2="595" y2="20" stroke="black" stroke-width="2"/>
</g>
<g id="whole-right">
<rect x="275" y="5" width="100" height="30" stroke="black" fill="white" stroke-width="1"/>
<line x1="5" y1="20" x2="275" y2="20" stroke="black" stroke-width="2"/>
<line x1="375" y1="20" x2="583" y2="20" stroke="black" stroke-width="2" marker-end="url(#Triangle)"/>
</g>
<g id="whole-left">
<rect x="275" y="5" width="100" height="30" stroke="black" fill="white" stroke-width="1"/>
<line x1="275" y1="20" x2="17" y2="20" stroke="black" stroke-width="2" marker-end="url(#Triangle)"/>
<line x1="375" y1="20" x2="595" y2="20" stroke="black" stroke-width="2"/>
</g>
</defs>
<line x1="145" y1="0" x2="145" y2="420" stroke="gray"/>
<text x="55" y="25" fill="gray">Application</text>
<text x="160" y="25" fill="gray">YAML</text>
<g id="boxes" text-anchor="middle" transform="translate(0 190)">
<g id="native" transform="translate(0 0)">
<use xlink:href="#box"/>
<text x="60" y="25" font-style="italic">Native</text>
<text x="60" y="45" font-weight="bold">Nim Types</text>
</g>
<g id="representation" transform="translate(170 0)">
<use xlink:href="#box"/>
<text x="60" y="25" font-style="italic">Representation</text>
<a xlink:href="yaml.html#YamlDocument" target="_top">
<text x="60" y="45" font-weight="bold">YamlDocument</text>
</a>
</g>
<g id="serialization" transform="translate(320 0)">
<use xlink:href="#box"/>
<text x="60" y="25" font-style="italic">Serialization</text>
<a xlink:href="yaml.html#YamlStream" target="_top">
<text x="60" y="45" font-weight="bold">YamlStream</text>
</a>
</g>
<g id="presentation" transform="translate(470 0)">
<use xlink:href="#box"/>
<text x="60" y="25" font-style="italic">Presentation</text>
<a xlink:href="http://nim-lang.org/docs/streams.html#Stream" target="_top">
<text x="60" y="45" font-weight="bold">Stream</text>
</a>
</g>
</g>
<g id="atomics" text-anchor="middle" transform="translate(0 130)">
<g id="represent" transform="translate(65 10)">
<use xlink:href="#atomic-right-long"/>
<text x="80" y="25" font-style="italic">represent</text>
</g>
<g id="serialize" transform="translate(235 10)">
<use xlink:href="#atomic-right"/>
<a xlink:href="yaml.dom.html#serialize,YamlDocument,TagLibrary,AnchorStyle" target="_top">
<text x="70" y="25" font-style="italic" font-weight="bold">serialize</text>
</a>
</g>
<g id="present" transform="translate(385 10)">
<use xlink:href="#atomic-right"/>
<a xlink:href="yaml.presenter.html#present,YamlStream,Stream,TagLibrary,PresentationOptions" target="_top">
<text x="70" y="25" font-style="italic" font-weight="bold">present</text>
</a>
</g>
<g id="construct" transform="translate(65 120)">
<use xlink:href="#atomic-left-long"/>
<text x="80" y="35" font-style="italic">construct</text>
</g>
<g id="compose" transform="translate(235 120)">
<use xlink:href="#atomic-left"/>
<a xlink:href="yaml.dom.html#compose,YamlStream,TagLibrary" target="_top">
<text x="70" y="35" font-style="italic" font-weight="bold">compose</text>
</a>
</g>
<g id="parse" transform="translate(385 120)">
<use xlink:href="#atomic-left"/>
<a xlink:href="yaml.parser.html#parse,YamlParser,Stream" target="_top">
<text x="70" y="35" font-style="italic" font-weight="bold">parse</text>
</a>
</g>
</g>
<g id="skipping-things" text-anchor="middle" transform="translate(0 90)">
<g id="skipping-represent" transform="translate(55 10)">
<use xlink:href="#skipping-right"/>
<a xlink:href="yaml.serialization.html#represent,T,TagStyle,AnchorStyle" target="_top">
<text x="175" y="25" font-weight="bold">represent</text>
</a>
</g>
<g id="skipping-construct" transform="translate(55 160)">
<use xlink:href="#skipping-left"/>
<a xlink:href="yaml.serialization.html#construct,YamlStream,T" target="_top">
<text x="175" y="75" font-weight="bold">construct</text>
</a>
</g>
</g>
<g id="whole-lines" text-anchor="middle" transform="translate(0 20)">
<g id="dump">
<use xlink:href="#whole-right"/>
<a xlink:href="yaml.serialization.html#dump,K,Stream,TagStyle,AnchorStyle,PresentationOptions" target="_top">
<text x="325" y="25" font-style="italic" font-weight="bold">dump</text>
</a>
</g>
<g id="dumpDOM">
<use xlink:href="#dom-right"/>
<a xlink:href="yaml.dom.html#dumpDOM,YamlDocument,Stream,AnchorStyle,PresentationOptions" target="_top">
<text x="380" y="65" font-weight="bold">dumpDOM</text>
</a>
</g>
<g id="loadDOM" transform="translate(0 320)">
<use xlink:href="#dom-left"/>
<a xlink:href="yaml.dom.html#loadDOM," target="_top">
<text x="380" y="25" font-weight="bold">loadDOM</text>
</a>
</g>
<g id="load" transform="translate(0 360)">
<use xlink:href="#whole-left"/>
<a xlink:href="yaml.serialization.html#load,,K" target="_top">
<text x="325" y="25" font-style="italic" font-weight="bold">load</text>
</a>
</g>
</g>
</svg>