Massive reorganization in progress.
[sod] / doc / standard-method-combination.svg
diff --git a/doc/standard-method-combination.svg b/doc/standard-method-combination.svg
new file mode 100644 (file)
index 0000000..c54f546
--- /dev/null
@@ -0,0 +1,604 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="389.75183"
+   height="344.37515"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   sodipodi:docname="standard-method-combination.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   version="1.0">
+  <defs
+     id="defs4">
+    <marker
+       inkscape:stockid="Arrow1Mend"
+       orient="auto"
+       refY="0.0"
+       refX="0.0"
+       id="Arrow1Mend"
+       style="overflow:visible;">
+      <path
+         id="path3268"
+         d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;marker-start:none;"
+         transform="scale(0.4) rotate(180) translate(10,0)" />
+    </marker>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       id="perspective108" />
+    <marker
+       inkscape:stockid="Arrow2Mend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow2Mend"
+       style="overflow:visible">
+      <path
+         id="path3204"
+         style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+         d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.97309,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z"
+         transform="scale(-0.6,-0.6)" />
+    </marker>
+    <radialGradient
+       xlink:href="#linearGradient3074"
+       r="21.214399"
+       inkscape:collect="always"
+       id="radialGradient3078"
+       fy="158.17307"
+       fx="61.08794"
+       cy="158.17307"
+       cx="61.08794"
+       gradientTransform="scale(1.2180558,0.8209804)"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient3074">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0.53370786;"
+         offset="0.0000000"
+         id="stop3075" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0.69101125;"
+         offset="1.0000000"
+         id="stop3076" />
+    </linearGradient>
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     gridtolerance="10000"
+     guidetolerance="10"
+     objecttolerance="10"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="2.268243"
+     inkscape:cx="194.87592"
+     inkscape:cy="172.21547"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     inkscape:window-width="1337"
+     inkscape:window-height="998"
+     inkscape:window-x="225"
+     inkscape:window-y="17"
+     showborder="false" />
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <cc:license
+           rdf:resource="http://creativecommons.org/licenses/by-sa/3.0/" />
+        <dc:title>SOD standard method combination diagram</dc:title>
+        <dc:date>2009-09-18</dc:date>
+        <dc:creator>
+          <cc:Agent>
+            <dc:title>Mark Wooding</dc:title>
+          </cc:Agent>
+        </dc:creator>
+        <dc:description>A diagram showing how the applicable methods are invoked by standard method combination in the SOD object system.</dc:description>
+        <dc:rights>
+          <cc:Agent>
+            <dc:title>Straylight/Edgeware</dc:title>
+          </cc:Agent>
+        </dc:rights>
+        <dc:publisher>
+          <cc:Agent>
+            <dc:title>Straylight/Edgeware</dc:title>
+          </cc:Agent>
+        </dc:publisher>
+        <dc:language>en-GB</dc:language>
+      </cc:Work>
+      <cc:License
+         rdf:about="http://creativecommons.org/licenses/by-sa/3.0/">
+        <cc:permits
+           rdf:resource="http://creativecommons.org/ns#Reproduction" />
+        <cc:permits
+           rdf:resource="http://creativecommons.org/ns#Distribution" />
+        <cc:requires
+           rdf:resource="http://creativecommons.org/ns#Notice" />
+        <cc:requires
+           rdf:resource="http://creativecommons.org/ns#Attribution" />
+        <cc:permits
+           rdf:resource="http://creativecommons.org/ns#DerivativeWorks" />
+        <cc:requires
+           rdf:resource="http://creativecommons.org/ns#ShareAlike" />
+      </cc:License>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(-76.574432,-549.18106)">
+    <g
+       id="g3106">
+      <g
+         transform="translate(-6.4194226,7.8915857)"
+         id="g2941">
+        <use
+           transform="translate(-87.171262,-145.57702)"
+           x="0"
+           y="0"
+           xlink:href="#rect2383"
+           id="use8070"
+           width="744.09448"
+           height="1052.3622" />
+        <use
+           height="1052.3622"
+           width="744.09448"
+           id="use8068"
+           xlink:href="#rect2383"
+           y="0"
+           x="0"
+           transform="translate(-91.171262,-141.57702)" />
+        <use
+           transform="translate(-95.171262,-137.57702)"
+           x="0"
+           y="0"
+           xlink:href="#rect2383"
+           id="use8057"
+           width="744.09448"
+           height="1052.3622" />
+      </g>
+      <text
+         id="text7219"
+         y="743.74951"
+         x="137.82718"
+         style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Palladio Uralic;-inkscape-font-specification:Palladio Uralic"
+         xml:space="preserve"><tspan
+           id="tspan7221"
+           y="743.74951"
+           x="137.82718"
+           sodipodi:role="line">Before method</tspan></text>
+      <path
+         sodipodi:nodetypes="cc"
+         id="path7232"
+         d="M 96.33489,740.26133 L 127.09404,709.94688"
+         style="fill:none;fill-rule:evenodd;stroke:#00c800;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+      <flowRoot
+         transform="translate(-301.49963,-67.218524)"
+         style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#00c800;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Palladio Uralic;-inkscape-font-specification:Palladio Uralic"
+         id="flowRoot7234"
+         xml:space="preserve"><flowRegion
+           id="flowRegion7236"><rect
+             style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#00c800;fill-opacity:1"
+             y="756.86218"
+             x="377"
+             height="38.5"
+             width="35.5"
+             id="rect7238" /></flowRegion><flowPara
+           id="flowPara7240">Most to least specific</flowPara></flowRoot>      <path
+         sodipodi:nodetypes="cc"
+         style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+         d="M 233.72077,768.23762 L 215.68955,750.20639"
+         id="path7292" />
+      <text
+         xml:space="preserve"
+         style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Palladio Uralic;-inkscape-font-specification:Palladio Uralic"
+         x="149.36943"
+         y="762.65088"
+         id="text7294"><tspan
+           sodipodi:role="line"
+           id="tspan7296"
+           x="149.36943"
+           y="762.65088"
+           style="font-style:italic">call-next-method</tspan></text>
+      <path
+         id="path7370"
+         d="M 215.3571,720.94472 L 233.38832,702.91349"
+         style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+         sodipodi:nodetypes="cc" />
+      <use
+         height="1052.3622"
+         width="744.09448"
+         transform="matrix(1,0,0,-1,193.60423,1471.9955)"
+         id="use2946"
+         xlink:href="#g2941"
+         y="0"
+         x="0" />
+      <text
+         xml:space="preserve"
+         style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Palladio Uralic;-inkscape-font-specification:Palladio Uralic"
+         x="334.1524"
+         y="735.396"
+         id="text7428"><tspan
+           sodipodi:role="line"
+           x="334.1524"
+           y="735.396"
+           id="tspan7430">After method</tspan></text>
+      <path
+         style="fill:none;fill-rule:evenodd;stroke:#00c800;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+         d="M 414.991,709.26598 L 445.75015,739.58043"
+         id="path7432"
+         sodipodi:nodetypes="cc" />
+      <flowRoot
+         xml:space="preserve"
+         id="flowRoot7434"
+         style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#00c800;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Palladio Uralic;-inkscape-font-specification:Palladio Uralic"
+         transform="translate(54.25206,-67.572077)"><flowRegion
+           id="flowRegion7436"><rect
+             id="rect7438"
+             width="35.5"
+             height="38.5"
+             x="377"
+             y="756.86218"
+             style="text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#00c800;fill-opacity:1" /></flowRegion><flowPara
+           id="flowPara7440">Least to most specific</flowPara></flowRoot>      <path
+         id="path7442"
+         d="M 309.99443,702.58108 L 328.02565,720.61231"
+         style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+         sodipodi:nodetypes="cc" />
+      <text
+         id="text7444"
+         y="715.43781"
+         x="326.31656"
+         style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Palladio Uralic;-inkscape-font-specification:Palladio Uralic"
+         xml:space="preserve"><tspan
+           style="font-style:italic"
+           y="715.43781"
+           x="326.31656"
+           id="tspan7446"
+           sodipodi:role="line">return</tspan></text>
+      <path
+         sodipodi:nodetypes="cc"
+         style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+         d="M 328.3581,749.87398 L 310.32688,767.90521"
+         id="path7448" />
+      <path
+         id="path7460"
+         d="M 286.62089,703.05143 L 286.62089,767.7517"
+         style="fill:none;fill-rule:evenodd;stroke:#0000c8;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:0.75000000000000000, 0.75000000000000000;stroke-dashoffset:0;stroke-opacity:1" />
+      <text
+         transform="matrix(0,1,-1,0,0,0)"
+         id="text7983"
+         y="-289.09686"
+         x="705.11279"
+         style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#0000c8;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Palladio Uralic;-inkscape-font-specification:Palladio Uralic"
+         xml:space="preserve"><tspan
+           y="-289.09686"
+           x="705.11279"
+           id="tspan7985"
+           sodipodi:role="line">Return value</tspan></text>
+    </g>
+    <g
+       id="g3071">
+      <g
+         id="g2966">
+        <rect
+           y="861.61884"
+           x="211.62221"
+           height="16.482248"
+           width="120.76241"
+           id="rect2383"
+           style="font-size:10px;fill:#c8c8ff;fill-opacity:1;stroke:#000000;stroke-width:0.75;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+        <rect
+           style="font-size:10px;fill:#c8c8ff;fill-opacity:1;stroke:#000000;stroke-width:0.75;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+           id="rect2883"
+           width="120.76241"
+           height="16.482248"
+           x="211.62221"
+           y="828.91174" />
+        <rect
+           style="font-size:10px;fill:#c8c8ff;fill-opacity:1;stroke:#000000;stroke-width:0.75;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+           id="rect2875"
+           width="120.76241"
+           height="16.482248"
+           x="211.62221"
+           y="770.448" />
+        <path
+           id="path4477"
+           d="M 243.59829,860.1812 L 243.59829,847.80683"
+           style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+        <path
+           style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+           d="M 295.09829,847.18855 L 295.09829,859.56292"
+           id="path5000" />
+        <text
+           xml:space="preserve"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:end;line-height:125%;writing-mode:lr-tb;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Palladio Uralic;-inkscape-font-specification:Palladio Uralic"
+           x="239.44922"
+           y="856.36218"
+           id="text2952"
+           sodipodi:linespacing="125%"><tspan
+             sodipodi:role="line"
+             id="tspan2954"
+             x="239.44922"
+             y="856.36218"
+             style="font-style:italic;text-align:end;line-height:125%;writing-mode:lr-tb;text-anchor:end">call-next-method</tspan></text>
+        <text
+           id="text5030"
+           y="855.92719"
+           x="299.5"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Palladio Uralic;-inkscape-font-specification:Palladio Uralic"
+           xml:space="preserve"><tspan
+             style="font-style:italic"
+             y="855.92719"
+             x="299.5"
+             id="tspan5032"
+             sodipodi:role="line">return</tspan></text>
+        <path
+           id="path5048"
+           d="M 295.09829,814.18855 L 295.09829,826.56292"
+           style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+        <use
+           x="0"
+           y="0"
+           xlink:href="#text5030"
+           id="use2960"
+           transform="translate(0,-33)"
+           width="744.09448"
+           height="1052.3622" />
+        <path
+           id="path5060"
+           d="M 243.59829,801.6812 L 243.59829,789.30683"
+           style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+        <path
+           id="path5046"
+           d="M 243.59829,827.1812 L 243.59829,814.80683"
+           style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+        <path
+           style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+           d="M 295.09829,788.68855 L 295.09829,801.06292"
+           id="path5062" />
+        <text
+           id="text5072"
+           y="808.65448"
+           x="263"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Palladio Uralic;-inkscape-font-specification:Palladio Uralic"
+           xml:space="preserve"><tspan
+             y="808.65448"
+             x="263"
+             id="tspan5074"
+             sodipodi:role="line">. . .</tspan></text>
+        <use
+           x="0"
+           y="0"
+           xlink:href="#text2952"
+           id="use2956"
+           transform="translate(0,-33)"
+           width="744.09448"
+           height="1052.3622" />
+        <use
+           x="0"
+           y="0"
+           xlink:href="#text2952"
+           id="use2958"
+           transform="translate(0,-58.5)"
+           width="744.09448"
+           height="1052.3622" />
+        <use
+           x="0"
+           y="0"
+           xlink:href="#text5030"
+           id="use2962"
+           transform="translate(0,-58.5)"
+           width="744.09448"
+           height="1052.3622" />
+        <flowRoot
+           xml:space="preserve"
+           id="flowRoot5638"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#00c800;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Palladio Uralic;-inkscape-font-specification:Palladio Uralic"
+           transform="translate(-34.5,48.169125)"><flowRegion
+             id="flowRegion5640"><rect
+               id="rect5642"
+               width="35.5"
+               height="38.5"
+               x="377"
+               y="756.86218"
+               style="text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#00c800;fill-opacity:1" /></flowRegion><flowPara
+             id="flowPara5644">Most to least specific</flowPara></flowRoot>        <path
+           id="path3347"
+           d="M 338,876.33367 L 338,772.83367"
+           style="fill:none;fill-rule:evenodd;stroke:#00c800;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+      </g>
+      <path
+         id="path3341"
+         d="M 243.59829,892.6812 L 243.59829,880.30683"
+         style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+      <path
+         style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+         d="M 295.09829,880.18855 L 295.09829,892.56292"
+         id="path3335" />
+      <use
+         height="1052.3622"
+         width="744.09448"
+         transform="translate(0,33)"
+         id="use2964"
+         xlink:href="#text5030"
+         y="0"
+         x="0" />
+      <g
+         transform="translate(35.976561,0)"
+         id="g2994">
+        <text
+           sodipodi:linespacing="125%"
+           id="text3155"
+           y="873.42499"
+           x="236.11349"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Palladio Uralic;-inkscape-font-specification:Palladio Uralic"
+           xml:space="preserve"><tspan
+             id="tspan3159"
+             y="873.42499"
+             x="236.11349"
+             sodipodi:role="line">Around method</tspan></text>
+        <use
+           x="0"
+           y="0"
+           xlink:href="#text3155"
+           id="use2986"
+           transform="translate(-2.5939942e-6,-32.70712)"
+           width="744.09448"
+           height="1052.3622" />
+        <use
+           x="0"
+           y="0"
+           xlink:href="#text3155"
+           id="use2988"
+           transform="translate(-2.5939942e-6,-91.170866)"
+           width="744.09448"
+           height="1052.3622" />
+      </g>
+    </g>
+    <g
+       id="g3041">
+      <use
+         height="1052.3622"
+         width="744.09448"
+         transform="translate(0,-269.42743)"
+         id="use3038"
+         xlink:href="#text2952"
+         y="0"
+         x="0" />
+      <flowRoot
+         transform="translate(-24.870058,-7.68156)"
+         style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Palladio Uralic;-inkscape-font-specification:Palladio Uralic"
+         id="flowRoot7999"
+         xml:space="preserve"><flowRegion
+           id="flowRegion8001"><rect
+             y="558.09454"
+             x="287.08536"
+             height="24.395184"
+             width="79.903069"
+             id="rect8003" /></flowRegion><flowPara
+           id="flowPara8005">‘No next method’ error</flowPara></flowRoot>      <use
+         height="1052.3622"
+         width="744.09448"
+         transform="translate(-7.6293945e-6,-178.00001)"
+         id="use2990"
+         xlink:href="#g2966"
+         y="0"
+         x="0" />
+      <path
+         id="path7372"
+         d="M 244.26849,590.75383 L 244.26849,578.37946"
+         style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.75000000000000000;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Mend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
+      <g
+         id="g3138">
+        <path
+           d="M 252.33396,551.87647 L 253.31263,549.30103 L 253.7247,551.92798 L 255.37298,549.97064 L 255.11544,551.97949 L 258.92709,550.3312 L 256.14561,552.80363 L 259.18463,554.91549 L 255.88807,553.98833 L 258.56653,558.62413 L 255.37298,554.81247 L 255.78505,560.58146 L 254.3428,555.58511 L 251.71585,558.26357 L 253.41564,554.70946 L 250.53115,556.25472 L 252.33396,554.45191 L 248.93438,555.37907 L 250.73718,553.7823 L 248.11023,553.16419 L 251.25227,552.54608 L 250.78869,550.12517 L 252.33396,551.87647 z"
+           id="path3079"
+           sodipodi:nodetypes="ccccccccccccccccccccccc"
+           style="fill:#ffff00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.19195631pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+        <path
+           d="M 252.53999,552.6491 L 251.35529,551.41289 L 252.07641,553.00966 L 249.55248,553.2157 L 251.92189,553.67928 L 250.68567,554.55493 L 253.10659,553.98833 L 252.64301,554.76097 L 254.08526,554.03984 L 253.51866,555.63662 L 254.49733,554.86398 L 255.16695,556.61528 L 254.85789,554.24588 L 255.99109,554.76097 L 255.01242,553.57626 L 256.6607,553.67928 L 255.37298,553.11268 L 256.24863,552.13401 L 254.54884,552.39156 L 254.65186,551.41289 L 253.57017,552.90665 L 253.1581,550.94931 L 252.53999,552.6491 z"
+           id="path3080"
+           sodipodi:nodetypes="ccccccccccccccccccccccc"
+           style="fill:#ff3f00;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.19195631pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+        <path
+           style="fill:#a6a667;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.23994538;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1"
+           sodipodi:nodetypes="ccccccccccccccc"
+           id="path1817"
+           d="M 247.30717,549.89628 C 246.00963,549.94176 244.84256,550.91505 244.19739,551.52591 C 243.54502,552.14928 243.51447,553.31251 243.61252,554.07733 C 243.71058,554.84216 243.96644,555.43302 243.96644,555.43302 L 245.06419,554.95313 C 245.06419,554.95313 244.87482,554.509 244.80025,553.92736 C 244.72626,553.35025 244.78543,552.72675 245.16617,552.28974 C 245.60405,551.74993 246.88452,550.98903 248.22897,551.20098 C 249.13851,551.42743 249.67447,552.72927 250.43297,553.23152 C 251.19147,553.73377 252.21663,553.97614 253.54026,553.71141 C 254.12914,553.53696 254.09465,552.46369 253.30631,552.53568 C 252.21323,552.7543 251.61772,552.57935 251.09882,552.23575 C 250.57991,551.89215 250.13911,551.30485 249.60516,550.66411 L 249.59316,550.65811 C 249.11476,550.16521 248.19393,549.88725 247.30717,549.89628 z" />
+        <path
+           style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.19195631pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+           sodipodi:nodetypes="cc"
+           id="path2440"
+           d="M 253.49996,552.61443 C 253.49996,552.61443 252.20973,553.87567 251.25293,553.62922" />
+        <path
+           style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.19195631pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+           sodipodi:nodetypes="cc"
+           id="path2441"
+           d="M 251.10796,552.23751 C 250.84702,552.54195 249.60028,552.13603 249.0494,551.73012" />
+        <path
+           style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.19195631pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+           sodipodi:nodetypes="cc"
+           id="path2442"
+           d="M 247.81716,549.9035 C 247.87515,550.09197 247.1503,551.23722 246.51243,551.39669" />
+        <path
+           style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.19195631pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+           sodipodi:nodetypes="cc"
+           id="path2443"
+           d="M 245.2367,550.70084 C 245.2367,550.70084 245.57013,551.62864 245.12073,552.33899" />
+        <path
+           style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:0.19195631pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+           sodipodi:nodetypes="cc"
+           id="path2444"
+           d="M 243.55506,553.2523 C 243.96097,553.2378 244.88878,554.13661 244.93227,554.52803" />
+        <path
+           d="M 242.68783,554.71626 C 242.57768,555.20411 242.65793,556.90337 241.20017,558.32955 C 237.07117,559.4961 234.0618,562.82062 234.0618,566.78418 C 234.0618,571.7145 238.68629,575.71115 244.37945,575.71115 C 250.0726,575.71115 254.6911,571.7145 254.6911,566.78418 C 254.6911,562.61923 251.37869,559.14526 246.92287,558.15833 C 246.14765,557.08259 245.53252,555.5894 245.72314,554.65131 C 245.3779,554.17559 243.72357,553.79879 242.68783,554.71626 z"
+           id="path1193"
+           sodipodi:nodetypes="cccccccc"
+           style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
+        <path
+           d="M 103.57781,124.91055 A 30.456171,20.527729 0 1 1 42.665472,124.91055 A 30.456171,20.527729 0 1 1 103.57781,124.91055 z"
+           id="path2452"
+           sodipodi:cx="73.121643"
+           sodipodi:cy="124.91055"
+           sodipodi:rx="30.456171"
+           sodipodi:ry="20.527729"
+           sodipodi:type="arc"
+           style="fill:url(#radialGradient3078);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+           transform="matrix(0.2562315,0,0,0.2197998,225.48526,537.77762)" />
+      </g>
+      <g
+         id="g3028"
+         transform="translate(35.941561,-179.31502)">
+        <text
+           xml:space="preserve"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Palladio Uralic;-inkscape-font-specification:Palladio Uralic"
+           x="236.11349"
+           y="873.42499"
+           id="text3030"
+           sodipodi:linespacing="125%"><tspan
+             sodipodi:role="line"
+             x="236.11349"
+             y="873.42499"
+             id="tspan3032">Primary method</tspan></text>
+        <use
+           height="1052.3622"
+           width="744.09448"
+           transform="translate(-2.5939942e-6,-32.70712)"
+           id="use3034"
+           xlink:href="#text3030"
+           y="0"
+           x="0" />
+        <use
+           height="1052.3622"
+           width="744.09448"
+           transform="translate(-2.5939942e-6,-91.170866)"
+           id="use3036"
+           xlink:href="#text3030"
+           y="0"
+           x="0" />
+      </g>
+    </g>
+  </g>
+</svg>