#ifndef __TS_COMMON_H__
#define __TS_COMMON_H__
#include "postgres.h"
#include "fmgr.h"

#ifndef PG_NARGS
#define PG_NARGS() (fcinfo->nargs)
#endif

text* char2text(char* in);
text* charl2text(char* in, int len);
char	*text2char(text* in);
char	*pnstrdup(char* in, int len);
text	*ptextdup(text* in);
text	*mtextdup(text* in);

int   text_cmp(text *a, text *b);

#define NEXTVAL(x) ( (text*)( (char*)(x) + INTALIGN( VARSIZE(x) ) ) )
#define ARRNELEMS(x)  ArrayGetNItems( ARR_NDIM(x), ARR_DIMS(x))

void ts_error(int state, const char *format, ...);

#endif
