<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<!--
// // See license.txt for license information. // // tgl_block.xml // // 24-Jul-2003 phamilton Created //
-->

<object xmlns:xi="http://www.w3.org/2001/XInclude" xmlns="urn:xmlliterate.schema" name="@block">
    <description>Abstract class representing a "part" which is declared in the parts section and outputs some type of text. Parts are very simple text replacements rather than being some type of procedural text.</description>
    <classname>tgl_block</classname>
    <members>
        <typedobjvectortype name="conditions">
            <description>A list of condition objects. If it is empty, or the condition is passed, then the block is output.</description>
            <reftype>@condition</reftype>
        </typedobjvectortype>
    </members>
    <methods>
        <method name="output">
            <description>Output the block to the stream.</description>
            <inheritance>abstract</inheritance>
            <access>public</access>
            <returns>
                <voidtype/>
            </returns>
            <arguments>
                <ptrtypename name="filedef">
                    <description>Not sure.</description>
                    <reftype>tgl_structure_parser</reftype>
                </ptrtypename>
                <ptrtypename name="obj">
                    <description>Not sure.</description>
                    <reftype>@schemaobj</reftype>
                </ptrtypename>
            </arguments>
        </method>
        <method name="get_value">
            <description>Get the value of the block as a string.</description>
            <inheritance>abstract</inheritance>
            <access>public</access>
            <returns>
                <stringtype/>
            </returns>
        </method>
        <method name="pass">
            <description>Method used to "pass" this block.</description>
            <inheritance>concrete</inheritance>
            <access>public</access>
            <returns>
                <booltype>
                    <description>Returns true if this block should be output or not.</description>
                </booltype>
            </returns>
            <arguments>
                <ptrtypename name="filedef">
                    <description>Not sure.</description>
                    <reftype>tgl_structure_parser</reftype>
                </ptrtypename>
                <ptrtypename name="obj">
                    <description>Not sure.</description>
                    <reftype>@schemaobj</reftype>
                </ptrtypename>
                <booltype name="first">
                    <description>If true, then return true only if the first item is true.</description>
                </booltype>
                <booltype name="last">
                    <description>If true, then return true only if the last item is true.</description>
                </booltype>
            </arguments>
            <implementations>
                <xi:include href="cpp/block/block_pass.xml"/>
            </implementations>
        </method>
    </methods>
    <derived>
        <object name="stringmember">
            <description>Outputs the value of an object member.</description>
            <classname>tgl_stringmember</classname>
            <members>
                <stringtype name="location">
                    <description>The location of the object relative to the object. if blank, then the actual object is searched.</description>
                </stringtype>
                <stringtype name="membername">
                    <description>The name of the string member.</description>
                </stringtype>
            </members>
            <methods>
                <method name="output">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/stringmember_output.xml"/>
                    </implementations>
                </method>
                <method name="get_value">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_emptystring.xml"/>
                    </implementations>
                </method>
                <method name="get_block">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_null.xml"/>
                    </implementations>
                </method>
            </methods>
        </object>
        <object name="includes">
            <description>An includes block output's all of the includes needed to declare this object. This depends on the superclass (obviously), plus whether the class uses any other classes.</description>
            <classname>tgl_includes</classname>
            <members>
                <stringtype name="otherclasses">
                    <description>A list of other classes.</description>
                </stringtype>
                <stringtype name="otherincludes">
                    <description>Paired with "otherclasses", this list's the header file to use for each other class.</description>
                </stringtype>
                <stringtype name="language">
                    <description>The language to output for. Used when searching for information about types.</description>
                </stringtype>
            </members>
            <methods>
                <method name="output">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/includes_output.xml"/>
                    </implementations>
                </method>
                <method name="get_value">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_emptystring.xml"/>
                    </implementations>
                </method>
                <method name="get_block">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_null.xml"/>
                    </implementations>
                </method>
                <method name="collect_typename">
                    <description>Add in any includes from the typename passed.</description>
                    <inheritance>concrete</inheritance>
                    <access>private</access>
                    <returns>
                        <booltype>
                            <description>Returns true if successful.</description>
                        </booltype>
                    </returns>
                    <arguments>
                        <ptrtypename name="filedef">
                            <description>Not sure.</description>
                            <reftype>tgl_structure_parser</reftype>
                        </ptrtypename>
                        <ptrtypename name="obj">
                            <description>Not sure.</description>
                            <reftype>@schemaobj</reftype>
                        </ptrtypename>
                        <ptrtypename name="tn">
                            <description>The typename to add.</description>
                            <reftype>@typename</reftype>
                            <readonly>true</readonly>
                        </ptrtypename>
                        <stringsetptrtype name="includes">
                            <description>The include set to add to.</description>
                        </stringsetptrtype>
                    </arguments>
                    <implementations>
                        <xi:include href="cpp/block/includes_collect_typename.xml"/>
                    </implementations>
                </method>
            </methods>
        </object>
        <object name="forwards">
            <description>A forwards block output's all of the forwards needed to delcare this object.</description>
            <classname>tgl_forwards</classname>
            <members>
                <booltype name="local">
                    <description>If true, only forwards local to this namespace will be output, otherwise all global (non-local) forwards will be output.</description>
                </booltype>
            </members>
            <methods>
                <method name="output">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/forwards_output.xml"/>
                    </implementations>
                </method>
                <method name="get_value">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_emptystring.xml"/>
                    </implementations>
                </method>
                <method name="get_block">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_null.xml"/>
                    </implementations>
                </method>
                <method name="declare_reftype">
                    <description>Lookup the reftype object and put it into the set of forwards.</description>
                    <access>private</access>
<!--
TBD: This shoudl have been included from the args following, but that's not working yet.
-->

                    <includes>[<set>]</includes>
                    <returns>
                        <booltype>
                            <description>True if the reftype was found.</description>
                        </booltype>
                    </returns>
                    <arguments>
                        <ptrtypename name="filedef">
                            <description>Not sure.</description>
                            <reftype>tgl_structure_parser</reftype>
                        </ptrtypename>
                        <ptrtypename name="obj">
                            <description>Not sure.</description>
                            <reftype>@schemaobj</reftype>
                        </ptrtypename>
                        <stringtype name="reftype">
                            <description>The reftype to search for.</description>
                        </stringtype>
                        <stringsetptrtype name="forwards">
                            <description>Not sure.</description>
                        </stringsetptrtype>
                    </arguments>
                    <implementations>
                        <xi:include href="cpp/declare_reftype.xml"/>
                    </implementations>
                </method>
            </methods>
        </object>
        <object name="foreach">
            <description>A block which loops through a set of schema objects.</description>
            <classname>tgl_foreach</classname>
            <members>
                <stringtype name="location">
                    <description>The location of the object to find the vector in. If this is empty, then the current object is used.</description>
                </stringtype>
                <stringtype name="vector">
                    <description>The name of the vector to loop through.</description>
                </stringtype>
                <typedobjvectortype name="blocks">
                    <description>The blocks to be placed in the file.</description>
                    <reftype>@block</reftype>
                </typedobjvectortype>
                <stringtype name="structure">
                    <description>the overall structure of the file.</description>
                </stringtype>
            </members>
            <methods>
                <method name="output">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/foreach_output.xml"/>
                    </implementations>
                </method>
                <method name="get_value">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_emptystring.xml"/>
                    </implementations>
                </method>
                <method name="get_block">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/get_block.xml"/>
                    </implementations>
                </method>
            </methods>
        </object>
        <object name="overridemethods">
            <description>A block which outputs methods which are overridden. When methods are overridden, the signature of the method to output is usually the one of the declared object. For each method in the current object, the block executes in the context of the actual object that contains the definition of this method.</description>
            <classname>tgl_overridemethods</classname>
            <members>
                <stringtype name="location">
                    <description>The location of the object to find the methods in. If this is empty, then the current object is used.</description>
                </stringtype>
                <booltype name="matchname">
                    <description>If the location to search is not the current object (because we are actually on a method for instance), then only those methods that match the name of the current object will be matched.</description>
                </booltype>
                <typedobjvectortype name="blocks">
                    <description>The blocks to be placed in the file.</description>
                    <reftype>@block</reftype>
                </typedobjvectortype>
                <stringtype name="structure">
                    <description>the overall structure of the file.</description>
                </stringtype>
            </members>
            <methods>
                <method name="output">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/overridemethods_output.xml"/>
                    </implementations>
                </method>
                <method name="get_value">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_emptystring.xml"/>
                    </implementations>
                </method>
                <method name="get_block">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/get_block.xml"/>
                    </implementations>
                </method>
                <method name="find_method">
                    <description>Search a named method in the object. The method must be virtual or abstract.</description>
                    <access>private</access>
                    <returns>
                        <ptrtypename>
                            <description>The method found.</description>
                            <reftype>method</reftype>
                        </ptrtypename>
                    </returns>
                    <arguments>
                        <ptrtypename name="obj">
                            <description>Not sure.</description>
                            <reftype>@xmlobj</reftype>
                        </ptrtypename>
                        <stringtype name="name">
                            <description>The name of the method.</description>
                        </stringtype>
                    </arguments>
                    <implementations>
                        <xi:include href="cpp/find_method.xml"/>
                    </implementations>
                </method>
            </methods>
        </object>
        <object name="text">
            <description>The text block allows arbitrary text to be inserted into the stream.</description>
            <classname>tgl_text</classname>
            <members>
                <stringtype name="content">
                    <description>The content to output.</description>
                </stringtype>
                <inttype name="wrap">
                    <description>If wrap is non zero, then the text is wrapped.</description>
                </inttype>
            </members>
            <methods>
                <method name="output">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/text_output.xml"/>
                    </implementations>
                </method>
                <method name="get_value">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/text_get_value.xml"/>
                    </implementations>
                </method>
                <method name="get_block">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_null.xml"/>
                    </implementations>
                </method>
            </methods>
        </object>
        <object name="foreachobject">
            <description>A block which loops through objects.</description>
            <classname>tgl_foreachobject</classname>
            <members>
                <stringtype name="location">
                    <description>The location of the object to loop over. Empty means the current object.</description>
                </stringtype>
                <typedobjvectortype name="blocks">
                    <description>The blocks to be placed in the file.</description>
                    <reftype>@block</reftype>
                </typedobjvectortype>
                <stringtype name="structure">
                    <description>the overall structure of the file.</description>
                </stringtype>
            </members>
            <methods>
                <method name="output">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/foreachobject_output.xml"/>
                    </implementations>
                </method>
                <method name="get_value">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_emptystring.xml"/>
                    </implementations>
                </method>
                <method name="get_block">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/get_block.xml"/>
                    </implementations>
                </method>
                <method name="parse">
                    <description>used by the visitor to parse a single object.</description>
                    <inheritance>concrete</inheritance>
                    <access>public</access>
                    <returns>
                        <booltype>
                            <description>Returns true if parse is successful.</description>
                        </booltype>
                    </returns>
                    <arguments>
                        <ptrtypename name="obj">
                            <description>Not sure.</description>
                            <reftype>@schemaobj</reftype>
                        </ptrtypename>
                        <ptrtypename name="filedef">
                            <description>Not sure.</description>
                            <reftype>tgl_structure_parser</reftype>
                        </ptrtypename>
                    </arguments>
                    <implementations>
                        <xi:include href="cpp/block/foreachobject_parse.xml"/>
                    </implementations>
                </method>
            </methods>
        </object>
        <object name="lookupobjectmember">
            <description>Lookup the value of a member of an object with the name a member of the current object.</description>
            <classname>tgl_lookupobjectmember</classname>
            <members>
                <stringtype name="location">
                    <description>The location of the object to start the search from.</description>
                </stringtype>
                <stringtype name="lookupmember">
                    <description>The name of the member of a current object to use for the name search.</description>
                </stringtype>
                <stringtype name="membername">
                    <description>The name of the member to extract from the object.</description>
                </stringtype>
                <stringtype name="objecttype">
                    <description>The type of object we are searching for. If this is empty, then we arre searching for "object"s.</description>
                </stringtype>
            </members>
            <methods>
                <method name="output">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/lookupobjectmember_output.xml"/>
                    </implementations>
                </method>
                <method name="get_value">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_emptystring.xml"/>
                    </implementations>
                </method>
                <method name="get_block">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_null.xml"/>
                    </implementations>
                </method>
            </methods>
        </object>
        <object name="lookupobjectnamespace">
            <description>Lookup the namespace of an object with the name a member of the current object.</description>
            <classname>tgl_lookupobjectnamespace</classname>
            <members>
                <stringtype name="location">
                    <description>The location of the object to start the search from.</description>
                </stringtype>
                <stringtype name="lookupmember">
                    <description>The name of the member of a current object to use for the name search.</description>
                </stringtype>
            </members>
            <methods>
                <method name="output">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/lookupobjectnamespace_output.xml"/>
                    </implementations>
                </method>
                <method name="get_value">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_emptystring.xml"/>
                    </implementations>
                </method>
                <method name="get_block">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_null.xml"/>
                    </implementations>
                </method>
            </methods>
        </object>
        <object name="forlist">
            <description>A block which loops through a list of symbols. Use the pseudo block "item" to reference the list item within the structure (or blocks).</description>
            <classname>tgl_forlist</classname>
            <members>
                <stringtype name="list">
                    <description>The list to process.</description>
                </stringtype>
                <stringtype name="listmember">
                    <description>The member of this object containing the list to process if the list is empty.</description>
                </stringtype>
                <typedobjvectortype name="blocks">
                    <description>The blocks to be placed in the file.</description>
                    <reftype>@block</reftype>
                </typedobjvectortype>
                <stringtype name="structure">
                    <description>the overall structure of the file.</description>
                </stringtype>
            </members>
            <methods>
                <method name="output">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/forlist_output.xml"/>
                    </implementations>
                </method>
                <method name="get_value">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_emptystring.xml"/>
                    </implementations>
                </method>
                <method name="get_block">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/get_block.xml"/>
                    </implementations>
                </method>
            </methods>
        </object>
        <object name="date">
            <description>A date block output's the current date (or time).</description>
            <classname>tgl_date</classname>
            <members>
                <stringtype name="format">
                    <description>The date format to use: %a - abbreviated weekday name according to the current locale %A - full weekday name according to the current locale %b - abbreviated month name according to the current locale %B - full month name according to the current locale %c - preferred date and time representation for the current locale %d - day of the month as a decimal number (range 01 to 31) %D - same as %m/%d/%y %e - day of the month as a decimal number, a single digit is preceded by a space (range ' 1' to '31') %h - same as %b %H - hour as a decimal number using a 24-hour clock (range 00 to 23) %I - hour as a decimal number using a 12-hour clock (range 01 to 12) %m - month as a decimal number (range 01 to 12) %M - minute as a decimal number %p - either `am' or `pm' according to the given time value, or the corresponding strings for the current locale %r - time in a.m. and p.m. notation %R - time in 24 hour notation %S - second as a decimal number %T - current time, equal to %H:%M:%S %x - preferred date representation for the current locale without the time %X - preferred time representation for the current locale without the date %y - year as a decimal number without a century (range 00 to 99) %Y - year as a decimal number including the century %Z - time zone or name or abbreviation %% - a literal `%' character. </description>
                </stringtype>
            </members>
            <methods>
                <method name="output">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/date_output.xml"/>
                    </implementations>
                </method>
                <method name="get_value">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_emptystring.xml"/>
                    </implementations>
                </method>
                <method name="get_block">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_null.xml"/>
                    </implementations>
                </method>
            </methods>
        </object>
        <object name="tableentry">
            <description>Output a table data entry.</description>
            <classname>tgl_tableentry</classname>
            <members>
                <stringtype name="table">
                    <description>The location of the table.</description>
                </stringtype>
                <stringtype name="row">
                    <description>The member ti use to select the row.</description>
                </stringtype>
                <stringtype name="col">
                    <description>The member ti use to select the column.</description>
                </stringtype>
            </members>
            <methods>
                <method name="output">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/tableentry_output.xml"/>
                    </implementations>
                </method>
                <method name="get_value">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_emptystring.xml"/>
                    </implementations>
                </method>
                <method name="get_block">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_null.xml"/>
                    </implementations>
                </method>
            </methods>
        </object>
        <object name="namespace">
            <description>Output a namespace declaration.</description>
            <classname>tgl_namespace</classname>
            <members>
                <stringtype name="identifier">
                    <description>The namespace identifier. If this is empty, then the current objects namespace is used.</description>
                </stringtype>
                <stringtype name="context">
                    <description>The context to output the namespace in Valid contexts are "start", "end" and "using".</description>
                </stringtype>
                <stringtype name="language">
                    <description>The computer language. Defaults to C++.</description>
                </stringtype>
            </members>
            <methods>
                <method name="output">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/namespace_output.xml"/>
                    </implementations>
                </method>
                <method name="get_value">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_emptystring.xml"/>
                    </implementations>
                </method>
                <method name="get_block">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_null.xml"/>
                    </implementations>
                </method>
            </methods>
        </object>
        <object name="counter">
            <description>Output a count. After each access, the count increments.</description>
            <classname>tgl_counter</classname>
            <members>
                <inttype name="start">
                    <description>Start from this value (defaults to 1).</description>
                </inttype>
                <inttype name="increment">
                    <description>Increment by this amount (defaults to 1).</description>
                </inttype>
                <inttype name="count">
                    <description>The current count.</description>
                </inttype>
            </members>
            <methods>
                <method name="output">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/counter_output.xml"/>
                    </implementations>
                </method>
                <method name="get_value">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_emptystring.xml"/>
                    </implementations>
                </method>
                <method name="get_block">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_null.xml"/>
                    </implementations>
                </method>
            </methods>
        </object>
        <object name="webtangle">
            <description>Output a web.</description>
            <classname>tgl_webtangle</classname>
            <members>
                <stringtype name="language">
                    <description>The language to output.</description>
                </stringtype>
                <stringtype name="attributes">
                    <description>A list of attributes that must match.</description>
                </stringtype>
            </members>
            <methods>
                <method name="output">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/webtangle_output.xml"/>
                    </implementations>
                </method>
                <method name="get_value">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_emptystring.xml"/>
                    </implementations>
                </method>
                <method name="get_block">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_null.xml"/>
                    </implementations>
                </method>
                <method name="search_section">
                    <description>Search for a section of code and write it.</description>
                    <access>private</access>
                    <returns>
                        <booltype>
                            <description>True if we successfully found this section.</description>
                        </booltype>
                    </returns>
                    <arguments>
                        <ptrtypename name="filedef">
                            <description>Not sure.</description>
                            <reftype>tgl_structure_parser</reftype>
                        </ptrtypename>
                        <ptrtypename name="web">
                            <description>The web to search inside.</description>
                            <reftype>web</reftype>
                        </ptrtypename>
                        <stringtype name="name">
                            <description>The name of the section.</description>
                        </stringtype>
                    </arguments>
                    <implementations>
                        <xi:include href="cpp/block/webtangle_search_section.xml"/>
                    </implementations>
                </method>
                <method name="write_section">
                    <description>Write out a section of source code.</description>
                    <access>private</access>
                    <returns>
                        <booltype>
                            <description>True if we successfully wrote this section.</description>
                        </booltype>
                    </returns>
                    <arguments>
                        <ptrtypename name="filedef">
                            <description>Not sure.</description>
                            <reftype>tgl_structure_parser</reftype>
                        </ptrtypename>
                        <ptrtypename name="web">
                            <description>The web to search inside.</description>
                            <reftype>web</reftype>
                        </ptrtypename>
                        <ptrtypename name="websection">
                            <description>The section to write.</description>
                            <reftype>websection</reftype>
                        </ptrtypename>
                    </arguments>
                    <implementations>
                        <xi:include href="cpp/block/webtangle_write_section.xml"/>
                    </implementations>
                </method>
                <method name="write_source">
                    <description>Write out a section of source code.</description>
                    <access>private</access>
                    <returns>
                        <booltype>
                            <description>True if we successfully wrote this source.</description>
                        </booltype>
                    </returns>
                    <arguments>
                        <ptrtypename name="filedef">
                            <description>Not sure.</description>
                            <reftype>tgl_structure_parser</reftype>
                        </ptrtypename>
                        <ptrtypename name="websource">
                            <description>The source to write.</description>
                            <reftype>websource</reftype>
                        </ptrtypename>
                    </arguments>
                    <implementations>
                        <xi:include href="cpp/block/webtangle_write_source.xml"/>
                    </implementations>
                </method>
            </methods>
        </object>
        <object name="typeimplfield">
            <description>Output a field of the typeimpl for the current typename object.</description>
            <classname>tgl_typeimplfield</classname>
            <members>
                <stringtype name="language">
                    <description>The language to search for.</description>
                </stringtype>
                <stringtype name="field">
                    <description>The name of the typeimpl field to output.</description>
                </stringtype>
            </members>
            <methods>
                <method name="output">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/block/typeimplfield_output.xml"/>
                    </implementations>
                </method>
                <method name="get_value">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_emptystring.xml"/>
                    </implementations>
                </method>
                <method name="get_block">
                    <inheritance>override</inheritance>
                    <implementations>
                        <xi:include href="cpp/return_null.xml"/>
                    </implementations>
                </method>
            </methods>
        </object>
    </derived>
</object>