/***********************************************************************
* *
* This software is part of the ast package *
* Copyright (c) 1996-2011 AT&T Intellectual Property *
* and is licensed under the *
* Eclipse Public License, Version 1.0 *
* by AT&T Intellectual Property *
* *
* A copy of the License is available at *
* (with md5 checksum b35adb5213ca9657e911e9befb180842) *
* *
* Information and Software Systems Research *
* AT&T Research *
* Florham Park NJ *
* *
* Phong Vo <kpv@research.att.com> *
* Glenn Fowler <gsf@research.att.com> *
* *
***********************************************************************/
#pragma prototyped
/*
* rskey internal interface
*/
#ifndef _RSKEYHDR_H
#if _PACKAGE_ast
#include <ast.h>
#endif
#include <ctype.h>
#include <ccode.h>
#ifndef UCHAR_MAX
#define UCHAR_MAX ((unsigned char)(~0))
#endif
#ifndef SHRT_MAX
#endif
#ifndef INT_MAX
#endif
#ifndef LONG_MAX
#endif
{
} Position_t;
#define _RSKEYFIELD_PRIVATE_ \
unsigned char aflag; /* accumulate dups here */ \
unsigned char bflag; /* skip initial blanks */ \
unsigned char eflag; /* skip trailing blanks */ \
unsigned char standard; /* 1:-k 0:+pos-pos */ \
int binary; /* binary data */ \
int code; /* coder ccode or conversion */ \
int index; /* field definition index */ \
int freetrans; /* free trans on close */ \
unsigned char* trans; /* translation table */ \
unsigned char* keep; /* deletion table */ \
void* data; /* coder specific data */ \
typedef struct
{
} State_t;
#define _RSKEY_PRIVATE_ \
struct \
{ \
int index; /* last field index */ \
int maxfield; /* max field position */ \
unsigned char** positions; /* field start positions */ \
} field; /* key field info */ \
struct \
{ \
} accumulate; /* accumulate field info */ \
unsigned char* xfrmbuf; /* strxfrm buffer */ \
unsigned int xfrmsiz; /* strxfrm buffer size */ \
unsigned long shuffle; /* shuffle seed */ \
unsigned char coded; /* coded keys specified */
#include "rshdr.h"
#if !__STD_C && !defined(const)
#define const
#endif
#if !_PACKAGE_ast
#if __STD_C
#include <string.h>
#endif
#define elementsof(x) (sizeof(x)/sizeof(x[0]))
#endif
#endif