LoadSystemMethodInfo (XmlDoc subroutine)

From m204wiki
Revision as of 19:47, 31 December 2010 by Dme (talk | contribs)
Jump to navigation Jump to search

Load info about system methods into XmlDoc

LoadSystemMethodInfo is a member of the XmlDoc class.

This method loads an XmlDoc with information about methods in classes selected by a “pattern” argument. This method is primarily intended for User Language products delivered by Sirius Software, and the schema of the document may change from release to release.

Syntax

  Call doc:LoadSystemMethodInfo(pattern)

Syntax Terms

doc
An expression that points to the XmlDoc to contain the selected method information.
pattern
A string whose case is ignored and which can have any of the following forms:
methodPattern
This selects, from any system class, all methods which match the specified pattern.
classPattern':'methodPattern
This selects, from any system class matching classPattern, all methods which match methodPattern.
'System:'classPattern':'methodPattern
This is the same as classPattern':'methodPattern.

Usage Notes

  • The “New” method will only be displayed if either is true:
    • The methodPattern is the string New.
    • The New method has any arguments.
  • LoadSystemMethodInfo will not display classes in the module LOCAL, if they are selected by a pattern (that is, pattern contains a wildcard character), or if there is no classPattern component.

Example

The following request displays the class data for the AddAttribute method:

    Begin
    %d is Object XmlDoc
    %d = New
    %d:LoadSystemMethodInfo('AddAttribute')
    %d:Print
    End

The example result follows.

    <classes selection="AddAttribute">
      <class name="XMLNODE" system="yes" new="no" discard="no">
        <methods module="JSOPF" offset="00000CBC">
          <method name="ADDATTRIBUTE" type="function" callable="yes">
            <result>
              <type name="Object" class="XMLNODE"/>
            </result>
            <arg>
              <type name="Longstring"/>
            </arg>
            <arg>
              <type name="Longstring"/>
            </arg>
            <arg optional="yes">
              <type name="Longstring"/>
            </arg>
          </method>
        </methods>
      </class>
    </classes>