/
Sapphire/bin/
Sapphire/db/
Sapphire/db/OLC_rooms/
Sapphire/db/abi/
Sapphire/db/em_src/
Sapphire/db/helps/
Sapphire/db/helps/emman/ifunc/
Sapphire/db/npcs/Tatt/
Sapphire/db/objects/Tatt/
Sapphire/db/q_data/
Sapphire/db/rooms/Tatt/
Sapphire/doc/
Sapphire/doc/em/
Sapphire/etc/
Sapphire/src/abic/
Sapphire/src/areacon/
Sapphire/src/client/
Sapphire/src/embc/
Sapphire/src/emi/
Sapphire/src/emi/test/
Sapphire/src/include/
Sapphire/src/sapphire/em/
Sapphire/src/tcon/
/*
 * Copyright (C) 1995-1997 Christopher D. Granz
 *
 * This header may not be removed.
 *
 * Refer to the file "License" included in this package for further
 * information and before using any of the following.
 */

#include "emc.h"


/*
 * Globals
 */
NODE *                                                        pNodeTree;


/*
 * Functions
 */
NODE *node_int( register long rl )
{
    register NODE *pNode = alloc_mem( sizeof( *pNode ) );

    pNode->iType         = NODE_INT;
    pNode->uL.lInt       = rl;
    pNode->uR.pRight     = NULL;

    return ( pNode );
}


NODE *node_float( register double rd )
{
    register NODE *pNode = alloc_mem( sizeof( *pNode ) );

    pNode->iType         = NODE_FLOAT;
    pNode->uL.dFloat     = rd;
    pNode->uR.pRight     = NULL;

    return ( pNode );
}


NODE *node_string( register int riType, register char *pStr )
{
    register NODE *pNode = alloc_mem( sizeof( *pNode ) );

    pNode->iType         = riType;
    pNode->uL.pString    = str_dup( pStr );
    pNode->uR.pRight     = NULL;

    return ( pNode );
}


NODE *node_tree( register int riType, register NODE *pLeft,
                 register NODE *pRight )
{
    register NODE *pNode = alloc_mem( sizeof( *pNode ) );

    pNode->iType         = riType;
    pNode->uL.pLeft      = pLeft;
    pNode->uR.pRight     = pRight;

    return ( pNode );
}


/*
 * End of node.c
 */