Apache2
regexp.h File Reference
#include "libsed.h"
Include dependency graph for regexp.h:

Go to the source code of this file.

Data Structures

struct  _step_vars_storage
 
struct  _sed_comp_args
 

Macros

#define CBRA   2
 
#define CCHR   4
 
#define CDOT   8
 
#define CCL   12
 
#define CXCL   16
 
#define CDOL   20
 
#define CCEOF   22
 
#define CKET   24
 
#define CBACK   36
 
#define NCCL   40
 
#define STAR   01
 
#define RNGE   03
 
#define NBRA   9
 
#define PLACE(c)   ep[c >> 3] |= bittab[c & 07]
 
#define ISTHERE(c)   (ep[c >> 3] & bittab[c & 07])
 
#define SEDERR_CGMES   "command garbled: %s"
 
#define SEDERR_SMMES   "Space missing before filename: %s"
 
#define SEDERR_TMMES   "too much command text: %s"
 
#define SEDERR_LTLMES   "label too long: %s"
 
#define SEDERR_ULMES   "undefined label: %s"
 
#define SEDERR_DLMES   "duplicate labels: %s"
 
#define SEDERR_TMLMES   "too many labels: %s"
 
#define SEDERR_AD0MES   "no addresses allowed: %s"
 
#define SEDERR_AD1MES   "only one address allowed: %s"
 
#define SEDERR_TOOBIG   "suffix too large: %s"
 
#define SEDERR_OOMMES   "out of memory"
 
#define SEDERR_COPFMES   "cannot open pattern file: %s"
 
#define SEDERR_COIFMES   "cannot open input file: %s"
 
#define SEDERR_TMOMES   "too many {'s"
 
#define SEDERR_TMCMES   "too many }'s"
 
#define SEDERR_NRMES   "first RE may not be null"
 
#define SEDERR_UCMES   "unrecognized command: %s"
 
#define SEDERR_TMWFMES   "too many files in w commands"
 
#define SEDERR_COMES   "cannot open %s"
 
#define SEDERR_CCMES   "cannot create %s"
 
#define SEDERR_TMLNMES   "too many line numbers"
 
#define SEDERR_TMAMES   "too many appends after line %" APR_INT64_T_FMT
 
#define SEDERR_TMRMES   "too many reads after line %" APR_INT64_T_FMT
 
#define SEDERR_DOORNG   "``\\digit'' out of range: %s"
 
#define SEDERR_EDMOSUB   "ending delimiter missing on substitution: %s"
 
#define SEDERR_EDMOSTR   "ending delimiter missing on string: %s"
 
#define SEDERR_FNTL   "file name too long: %s"
 
#define SEDERR_CLTL   "command line too long"
 
#define SEDERR_TSNTSS   "transform strings not the same size: %s"
 
#define SEDERR_OLTL   "output line too long."
 
#define SEDERR_HSOVERFLOW   "hold space overflowed."
 
#define SEDERR_INTERNAL   "internal sed error"
 

Typedefs

typedef struct _step_vars_storage step_vars_storage
 
typedef struct _sed_comp_args sed_comp_args
 

Functions

char * sed_compile (sed_commands_t *commands, sed_comp_args *compargs, char *ep, char *endbuf, int seof)
 
void command_errf (sed_commands_t *commands, const char *fmt,...) __attribute__((format(printf
 

Macro Definition Documentation

◆ CBACK

#define CBACK   36

◆ CBRA

#define CBRA   2

◆ CCEOF

#define CCEOF   22

◆ CCHR

#define CCHR   4

◆ CCL

#define CCL   12

◆ CDOL

#define CDOL   20

◆ CDOT

#define CDOT   8

◆ CKET

#define CKET   24

◆ CXCL

#define CXCL   16

◆ ISTHERE

#define ISTHERE (   c)    (ep[c >> 3] & bittab[c & 07])

◆ NBRA

#define NBRA   9

◆ NCCL

#define NCCL   40

◆ PLACE

#define PLACE (   c)    ep[c >> 3] |= bittab[c & 07]

◆ RNGE

#define RNGE   03

◆ SEDERR_AD0MES

#define SEDERR_AD0MES   "no addresses allowed: %s"

◆ SEDERR_AD1MES

#define SEDERR_AD1MES   "only one address allowed: %s"

◆ SEDERR_CCMES

#define SEDERR_CCMES   "cannot create %s"

◆ SEDERR_CGMES

#define SEDERR_CGMES   "command garbled: %s"

◆ SEDERR_CLTL

#define SEDERR_CLTL   "command line too long"

◆ SEDERR_COIFMES

#define SEDERR_COIFMES   "cannot open input file: %s"

◆ SEDERR_COMES

#define SEDERR_COMES   "cannot open %s"

◆ SEDERR_COPFMES

#define SEDERR_COPFMES   "cannot open pattern file: %s"

◆ SEDERR_DLMES

#define SEDERR_DLMES   "duplicate labels: %s"

◆ SEDERR_DOORNG

#define SEDERR_DOORNG   "``\\digit'' out of range: %s"

◆ SEDERR_EDMOSTR

#define SEDERR_EDMOSTR   "ending delimiter missing on string: %s"

◆ SEDERR_EDMOSUB

#define SEDERR_EDMOSUB   "ending delimiter missing on substitution: %s"

◆ SEDERR_FNTL

#define SEDERR_FNTL   "file name too long: %s"

◆ SEDERR_HSOVERFLOW

#define SEDERR_HSOVERFLOW   "hold space overflowed."

◆ SEDERR_INTERNAL

#define SEDERR_INTERNAL   "internal sed error"

◆ SEDERR_LTLMES

#define SEDERR_LTLMES   "label too long: %s"

◆ SEDERR_NRMES

#define SEDERR_NRMES   "first RE may not be null"

◆ SEDERR_OLTL

#define SEDERR_OLTL   "output line too long."

◆ SEDERR_OOMMES

#define SEDERR_OOMMES   "out of memory"

◆ SEDERR_SMMES

#define SEDERR_SMMES   "Space missing before filename: %s"

◆ SEDERR_TMAMES

#define SEDERR_TMAMES   "too many appends after line %" APR_INT64_T_FMT

◆ SEDERR_TMCMES

#define SEDERR_TMCMES   "too many }'s"

◆ SEDERR_TMLMES

#define SEDERR_TMLMES   "too many labels: %s"

◆ SEDERR_TMLNMES

#define SEDERR_TMLNMES   "too many line numbers"

◆ SEDERR_TMMES

#define SEDERR_TMMES   "too much command text: %s"

◆ SEDERR_TMOMES

#define SEDERR_TMOMES   "too many {'s"

◆ SEDERR_TMRMES

#define SEDERR_TMRMES   "too many reads after line %" APR_INT64_T_FMT

◆ SEDERR_TMWFMES

#define SEDERR_TMWFMES   "too many files in w commands"

◆ SEDERR_TOOBIG

#define SEDERR_TOOBIG   "suffix too large: %s"

◆ SEDERR_TSNTSS

#define SEDERR_TSNTSS   "transform strings not the same size: %s"

◆ SEDERR_UCMES

#define SEDERR_UCMES   "unrecognized command: %s"

◆ SEDERR_ULMES

#define SEDERR_ULMES   "undefined label: %s"

◆ STAR

#define STAR   01

Typedef Documentation

◆ sed_comp_args

typedef struct _sed_comp_args sed_comp_args

◆ step_vars_storage

Function Documentation

◆ command_errf()

void command_errf ( sed_commands_t commands,
const char *  fmt,
  ... 
)

◆ sed_compile()

char* sed_compile ( sed_commands_t commands,
sed_comp_args compargs,
char *  ep,
char *  endbuf,
int  seof 
)