⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 marcomp.h

📁 harvest是一个下载html网页得机器人
💻 H
字号:
/*    $Id: marcomp.h,v 1.1 2003/02/28 12:33:39 oleg Exp $*/#ifndef MARCOMP_H#define MARCOMP_H#ifdef __cplusplusextern "C" {#endiftypedef struct mc_subfield{    char *name;    char *prefix;    char *suffix;    struct {	int start;	int end;    } interval;    int which;    union {#define MC_SF           1#define MC_SFGROUP	2#define MC_SFVARIANT    3        struct mc_field *in_line;        struct mc_subfield *child;    } u;    struct mc_subfield *next;    struct mc_subfield *parent;} mc_subfield;#define SZ_FNAME	3#define SZ_IND		1#define SZ_SFNAME	1#define SZ_PREFIX	1#define SZ_SUFFIX	1typedef struct mc_field{    char *name;    char *ind1;    char *ind2;    struct {	int start;	int end;    } interval;    struct mc_subfield *list;} mc_field;typedef enum{    NOP,    REGULAR,    LVARIANT,    RVARIANT,    LGROUP,    RGROUP,    LINLINE,    RINLINE,    SUBFIELD,    LINTERVAL,    RINTERVAL,} mc_token;typedef enum{    EMCOK = 0,	/* first always, mondatory */    EMCNOMEM,    EMCF,    EMCSF,    EMCSFGROUP,    EMCSFVAR,    EMCSFINLINE,    EMCEND	/* last always, mondatory */} mc_errcode;typedef struct mc_context{    int offset;        int crrval;    mc_token crrtok;        mc_errcode errcode;        int len;    const char *data;} mc_context;mc_context *mc_mk_context(const char *s);void mc_destroy_context(mc_context *c);mc_field *mc_getfield(mc_context *c);void mc_destroy_field(mc_field *p);void mc_pr_field(mc_field *p, int offset);mc_subfield *mc_getsubfields(mc_context *c, mc_subfield *parent);void mc_destroy_subfield(mc_subfield *p);void mc_destroy_subfields_recursive(mc_subfield *p);void mc_pr_subfields(mc_subfield *p, int offset);mc_errcode mc_errno(mc_context *c);const char *mc_error(mc_errcode no);#ifdef __cplusplus}#endif#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -