#ifndef _entry_
#define _entry_

#include "primitives.h"
#include "object.h"

typedef enum { principal, synonym } ENTRY_TYPE;

typedef struct entree
    {
    ENTRY_TYPE type;
    char *identifier;
    char *file_name;
    long offset;
    long length;
    struct instance_header *instance;
    }
    ENTRY;

#define TypeOfEntry(ent)    	((ent)->type)
#define KeyOfEntry(ent)    	((ent)->identifier)
#define FileOfEntry(ent)  	((ent)->file_name)
#define OffsetOfEntry(ent)  	((ent)->offset)
#define LengthOfEntry(ent)  	((ent)->length)
#define InstanceOfEntry(ent)	((ent)->instance)

ENTRY *CreateEntry ();

#endif
