view document/traverser_api_architecture.svg @ 121:790a73e0c8ec

add svg for graffle
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Fri, 03 Oct 2014 19:03:27 +0900
parents
children
line wrap: on
line source

<?xml version="1.0"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="-11 7 581 712" width="581pt" height="712pt"><metadata xmlns:dc="http://purl.org/dc/elements/1.1/"><dc:date>2012-12-10 13:35Z</dc:date><!-- Produced by OmniGraffle Professional 5.4.4 --></metadata><defs><font-face font-family="Hiragino Kaku Gothic ProN" font-size="12" panose-1="2 11 3 0 0 0 0 0 0 0" units-per-em="1000" underline-position="-60" underline-thickness="63.000004" slope="0" x-height="545" cap-height="766" ascent="880.00183" descent="-120.000244" font-weight="400"><font-face-src><font-face-name name="HiraKakuProN-W3"/></font-face-src></font-face><font-face font-family="Hiragino Kaku Gothic ProN" font-size="12" panose-1="2 11 6 0 0 0 0 0 0 0" units-per-em="1000" underline-position="-60" underline-thickness="117" slope="0" x-height="562" cap-height="784" ascent="880.00183" descent="-120.000244" font-weight="bold"><font-face-src><font-face-name name="HiraKakuProN-W6"/></font-face-src></font-face><font-face font-family="Hiragino Kaku Gothic ProN" font-size="10" panose-1="2 11 3 0 0 0 0 0 0 0" units-per-em="1000" underline-position="-60" underline-thickness="63" slope="0" x-height="545" cap-height="766" ascent="880.00177" descent="-120.000244" font-weight="400"><font-face-src><font-face-name name="HiraKakuProN-W3"/></font-face-src></font-face><font-face font-family="Hiragino Kaku Gothic ProN" font-size="10" panose-1="2 11 6 0 0 0 0 0 0 0" units-per-em="1000" underline-position="-60" underline-thickness="117" slope="0" x-height="562" cap-height="784" ascent="880.00177" descent="-120.000244" font-weight="bold"><font-face-src><font-face-name name="HiraKakuProN-W6"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-9 -4 10 8" markerWidth="10" markerHeight="8" color="black"><g><path d="M -8 0 L 0 3 L 0 -3 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="Arrow_Marker" viewBox="-9 -4 10 8" markerWidth="10" markerHeight="8" color="black"><g><path d="M -8 0 L 0 3 L 0 -3 Z" fill="none" stroke="currentColor" stroke-width="1"/></g></marker><font-face font-family="Helvetica" font-size="10" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker_2" viewBox="-1 -5 11 10" markerWidth="11" markerHeight="10" color="black"><g><path d="M 8.1142883 0 L 0 -3.0428581 L 0 3.0428581 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker><font-face font-family="Helvetica" font-size="12" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="Arrow_Marker_2" viewBox="-1 -5 11 10" markerWidth="11" markerHeight="10" color="black"><g><path d="M 8.1142883 0 L 0 -3.0428581 L 0 3.0428581 Z" fill="none" stroke="currentColor" stroke-width="1"/></g></marker></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>キャンバス 1</title><rect fill="white" width="559" height="783"/><g><title>レイヤー 1</title><rect x="84.5" y="321" width="379.5" height="18" fill="white"/><rect x="84.5" y="321" width="379.5" height="18" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(89.5 321)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="12" font-weight="400" x="0" y="11" textLength="338.064">+ Iterable&lt;TraverseResult&gt; traverse(TraverseEvaluator e)</tspan></text><rect x="84.5" y="285" width="379.5" height="36" fill="white"/><rect x="84.5" y="285" width="379.5" height="36" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(89.5 285)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="12" font-weight="bold" x="145.462" y="11" textLength="78.575996">&lt;&lt;inteface&gt;&gt;</tspan><tspan font-family="Hiragino Kaku Gothic ProN" font-size="12" font-weight="bold" x="146.734" y="29" textLength="8.5080004">T</tspan><tspan font-family="Hiragino Kaku Gothic ProN" font-size="12" font-weight="bold" x="154.162" y="29" textLength="68.603996">raversable</tspan></text><rect x="124.75" y="412.09375" width="296" height="15" fill="white"/><rect x="124.75" y="412.09375" width="296" height="15" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(129.75 412.09375)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="400" x="0" y="9" textLength="281.01001">+ Evaluation eval(Iterable&lt;Node&gt; path,Node child,int pos)</tspan></text><rect x="124.75" y="382.09375" width="296" height="30" fill="white"/><rect x="124.75" y="382.09375" width="296" height="30" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(129.75 382.09375)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="bold" x="110.26" y="9" textLength="65.480003">&lt;&lt;inteface&gt;&gt;</tspan><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="bold" x="93.805" y="24" textLength="7.09">T</tspan><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="bold" x="99.995" y="24" textLength="92.199997">raverseEvaluator</tspan></text><rect x="182.75" y="500.1875" width="180" height="30" fill="white"/><rect x="182.75" y="500.1875" width="180" height="30" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(187.75 500.1875)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="400" x="0" y="9" textLength="129.84">+ EvaluationResult result()</tspan><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="400" x="0" y="24" textLength="155.880005">+ TraverseEvaluator evaluator()</tspan></text><rect x="182.75" y="470.1875" width="180" height="30" fill="white"/><rect x="182.75" y="470.1875" width="180" height="30" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(187.75 470.1875)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="bold" x="52.26" y="9" textLength="65.480003">&lt;&lt;inteface&gt;&gt;</tspan><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="bold" x="57.17" y="24" textLength="55.66">Evaluation</tspan></text><rect x="212.25" y="618.6875" width="124" height="15" fill="white"/><rect x="212.25" y="618.6875" width="124" height="15" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(217.25 618.6875)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="400" x="0" y="9" textLength="27.02">+ ???</tspan></text><rect x="212.25" y="588.6875" width="124" height="30" fill="white"/><rect x="212.25" y="588.6875" width="124" height="30" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(217.25 588.6875)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="bold" x="31.235" y="9" textLength="51.53">&lt;&lt;enum&gt;&gt;</tspan><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="bold" x="12.265" y="24" textLength="89.47">EvaluationResult</tspan></text><rect x="434.25" y="693" width="124" height="15" fill="white"/><rect x="434.25" y="693" width="124" height="15" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(439.25 693)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="400" x="0" y="9" textLength="27.02">+ ???</tspan></text><rect x="434.25" y="678" width="124" height="15" fill="white"/><rect x="434.25" y="678" width="124" height="15" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(439.25 678)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="bold" x="20.13" y="9" textLength="73.74">DENY_BREAK</tspan></text><rect x="291.375" y="693" width="124" height="15" fill="white"/><rect x="291.375" y="693" width="124" height="15" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(296.375 693)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="400" x="0" y="9" textLength="27.02">+ ???</tspan></text><rect x="291.375" y="678" width="124" height="15" fill="white"/><rect x="291.375" y="678" width="124" height="15" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(296.375 678)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="bold" x="10.185" y="9" textLength="93.63">DENY_CONTINUE</tspan></text><rect x="148.5" y="693" width="124" height="15" fill="white"/><rect x="148.5" y="693" width="124" height="15" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(153.5 693)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="400" x="0" y="9" textLength="27.02">+ ???</tspan></text><rect x="148.5" y="678" width="124" height="15" fill="white"/><rect x="148.5" y="678" width="124" height="15" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(153.5 678)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="bold" x="12.985" y="9" textLength="88.03">ACCEPT_BREAK</tspan></text><rect x=".75" y="693" width="124" height="15" fill="white"/><rect x=".75" y="693" width="124" height="15" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(5.75 693)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="400" x="0" y="9" textLength="27.02">+ ???</tspan></text><rect x=".75" y="678" width="124" height="15" fill="white"/><rect x=".75" y="678" width="124" height="15" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(5.75 678)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="bold" x="3.04" y="9" textLength="107.92">ACCEPT_CONTINUE</tspan></text><line x1="237.49237" y1="636.4957" x2="89.97537" y2="677.865" marker-start="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="258.57475" y1="640.77163" x2="218.92718" y2="677.6594" marker-start="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="292.57685" y1="639.9254" x2="342.96966" y2="677.7001" marker-start="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="312.36923" y1="636.37194" x2="467.6953" y2="677.87094" marker-start="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="126.25" y="195" width="296" height="30" fill="white"/><rect x="126.25" y="195" width="296" height="30" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(131.25 195)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="400" x="0" y="9" textLength="134.72">+ Iterator&lt;Node&gt; itrerator()</tspan><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="400" x="0" y="24" textLength="76.85">+ Node target()</tspan></text><rect x="126.25" y="165" width="296" height="30" fill="white"/><rect x="126.25" y="165" width="296" height="30" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(131.25 165)" fill="black"><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="bold" x="110.26" y="9" textLength="65.480003">&lt;&lt;inteface&gt;&gt;</tspan><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="bold" x="102.47" y="24" textLength="7.09">T</tspan><tspan font-family="Hiragino Kaku Gothic ProN" font-size="10" font-weight="bold" x="108.66" y="24" textLength="74.870003">raverseResult</tspan></text><line x1="274.25001" y1="235.4" x2="274.25001" y2="284.5" marker-start="url(#Arrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><ellipse cx="275" cy="93" rx="18.250029" ry="18.000029" fill="white"/><ellipse cx="275" cy="93" rx="18.250029" ry="18.000029" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(305 81)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="3.6430664" y="10" textLength="61.713867">&lt;&lt;interface&gt;&gt;</tspan><tspan font-family="Helvetica" font-size="10" font-weight="500" x=".029785156" y="22" textLength="68.94043">Iterable&lt;Node&gt;</tspan></text><line x1="274.41848" y1="164.50003" x2="274.89116" y2="121.013705" marker-end="url(#FilledArrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><text transform="translate(9 16)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" x=".040039062" y="11" textLength="7.330078">T</tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="6.930664" y="11" textLength="47.34375">raverser </tspan><tspan font-family="Helvetica" font-size="12" font-weight="500" x="53.618164" y="11" textLength="19.341797">API</tspan></text><line x1="274.03761" y1="339.49988" x2="273.32036" y2="371.58209" marker-end="url(#Arrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><text transform="translate(280.25 358.09375)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" x=".31054688" y="11" textLength="47.378906">&lt;&lt;use&gt;&gt;</tspan></text><text transform="translate(210.75 230.5)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" x=".31054688" y="11" textLength="47.378906">&lt;&lt;use&gt;&gt;</tspan></text><line x1="272.75001" y1="427.59375" x2="272.75001" y2="459.6732" marker-end="url(#Arrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><line x1="273.01271" y1="530.68743" x2="273.81758" y2="578.17472" marker-end="url(#Arrow_Marker_2)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1" stroke-dasharray="4,4"/><text transform="translate(284.75 442.25)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" x=".31054688" y="11" textLength="47.378906">&lt;&lt;use&gt;&gt;</tspan></text><text transform="translate(284.75 560.125)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" x=".31054688" y="11" textLength="47.378906">&lt;&lt;use&gt;&gt;</tspan></text><text transform="translate(382.75 639)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" x=".46972656" y="11" textLength="70.060547">&lt;&lt;extends&gt;&gt;</tspan></text><text transform="translate(284.75 136.25)" fill="black"><tspan font-family="Helvetica" font-size="12" font-weight="500" x=".46972656" y="11" textLength="70.060547">&lt;&lt;extends&gt;&gt;</tspan></text></g></g></svg>