<sect1>
<title
>API de criação de scripts da infraestrutura de listas ligadas</title>
<sect2>
<title
>Estrutura de dados de listas ligadas</title>
<para
>Um objeto de lista armazena as informações de uma estrutura de dados do tipo "Lista ligada". </para>

<sect3>
<title
>Propriedades</title>
<itemizedlist>
    <listitem>
        <para
><emphasis
>name</emphasis
> : </para>
        <para
>O nome único desta estrutura de dados.</para>
    </listitem>
</itemizedlist>
</sect3>


<sect3>
<title
>Métodos</title>
<variablelist>

    <varlistentry>
    <term
>head()</term>
    <listitem>
        <para
>Devolve o nó de início da lista.</para>
    <funcsynopsis
><funcprototype
><funcdef
>ListNode <function
>head</function
></funcdef
> <paramdef
></paramdef
> </funcprototype>
    </funcsynopsis>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
>setHead(nó)</term>
    <listitem>
        <para
>Define o nó de início da lista.</para>
    <funcsynopsis
><funcprototype
><funcdef
>void <function
>setHead</function
></funcdef
> <paramdef
>ListNode <parameter
><replaceable
>nó</replaceable
></parameter
></paramdef
> </funcprototype>
    </funcsynopsis>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
>createNode(tipo)</term>
    <listitem>
        <para
>Cria um novo nó do tipo indicado e devolve o nó criado. Se o tipo não estiver registrado, nenhum nó será criado.</para>
    <funcsynopsis
><funcprototype
><funcdef
>ListNode <function
>createNode</function
></funcdef
> <paramdef
>int <parameter
><replaceable
>tipo</replaceable
></parameter
></paramdef
> </funcprototype>
    </funcsynopsis>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
>createNode()</term>
    <listitem>
        <para
>Cria um novo nó com o tipo padrão e devolve o nó criado.</para>
    <funcsynopsis
><funcprototype
><funcdef
>ListNode <function
>createNode</function
></funcdef
> <paramdef
></paramdef
> </funcprototype>
    </funcsynopsis>
    </listitem>
    </varlistentry>
</variablelist>
</sect3>
</sect2>


<sect2>
<title
>Nó da lista</title>
<para
>Um nó é o elemento de dados de uma lista ligada. </para>

<sect3>
<title
>Propriedades</title>
<itemizedlist>

    <listitem>
        <para
><emphasis
>width</emphasis
> : </para>
        <para
>O tamanho deste elemento de dados.</para>
    </listitem>

    <listitem>
        <para
><emphasis
>x</emphasis
> : </para>
        <para
>A coordenada X deste elemento de dados.</para>
    </listitem>

    <listitem>
        <para
><emphasis
>y</emphasis
> : </para>
        <para
>A coordenada Y deste elemento de dados.</para>
    </listitem>

    <listitem>
        <para
><emphasis
>id</emphasis
> : </para>
        <para
>O identificador único deste elemento de dados.</para>
    </listitem>

    <listitem>
        <para
><emphasis
>color</emphasis
> : </para>
        <para
>A cor deste elemento de dados, indicada como um valor hexadecimal.</para>
    </listitem>
</itemizedlist>
</sect3>


<sect3>
<title
>Métodos</title>
<variablelist>
    <varlistentry>
    <term
>pointTo(destino)</term>
    <listitem>
        <para
>Define o ponteiro deste nó da lista para o nó de destino.</para>
    <funcsynopsis
><funcprototype
><funcdef
>void <function
>pointTo</function
></funcdef
> <paramdef
>ListNode <parameter
><replaceable
>destino</replaceable
></parameter
></paramdef
> </funcprototype>
    </funcsynopsis>
    </listitem>
    </varlistentry>
</variablelist>
</sect3>
</sect2>
</sect1>
