File: scorefile.h

package info (click to toggle)
trn4 4.0-test77-18
  • links: PTS, VCS
  • area: non-free
  • in suites: trixie
  • size: 4,016 kB
  • sloc: ansic: 48,332; sh: 6,795; tcl: 1,696; yacc: 662; perl: 108; makefile: 26
file content (83 lines) | stat: -rw-r--r-- 2,350 bytes parent folder | download | duplicates (12)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
/* This file Copyright 1992 by Clifford A. Adams */
/* scorefile.h
 *
 */

#define DEFAULT_SCOREDIR "%+/scores"

struct sf_entry {
    int head_type;	/* header # (see head.h) */
    int score;		/* score change */
    char* str1;		/* first string part */
    char* str2;		/* second string part */
    COMPEX* compex;	/* regular expression ptr */
    char flags;		/* 1: regex is valid
			 * 2: rule has been applied to the current article.
			 * 4: use faster rule checking  (later)
			 */
};
/* note that negative header #s are used to indicate special entries... */

EXT int sf_num_entries INIT(0);	/* # of entries */
EXT SF_ENTRY* sf_entries;	/* array of entries */

#ifdef SCOREFILE_CACHE
/* for cached score rules */
struct sf_file {
    char* fname;
    int num_lines;
    int num_alloc;
    long line_on;
    char** lines;
};

EXT SF_FILE *sf_files INIT((SF_FILE*)NULL);
EXT int sf_num_files INIT(0);
#endif

EXT char **sf_abbr;		/* abbreviations */

/* when true, the scoring routine prints lots of info... */
EXT int sf_score_verbose INIT(FALSE);

EXT bool sf_verbose INIT(TRUE);  /* if true print more stuff while loading */

/* if TRUE, only header types that are cached are scored... */
EXT bool cached_rescore INIT(FALSE);

/* if TRUE, newauthor is active */
EXT bool newauthor_active INIT(FALSE);
/* bonus score given to a new (unscored) author */
EXT int newauthor INIT(0);

/* if TRUE, reply_score is active */
EXT bool reply_active INIT(FALSE);
/* score amount added to an article reply */
EXT int reply_score INIT(0);

/* should we match by pattern? */
EXT int sf_pattern_status INIT(FALSE);

/* DON'T EDIT BELOW THIS LINE OR YOUR CHANGES WILL BE LOST! */

void sf_init _((void));
void sf_clean _((void));
void sf_grow _((void));
int sf_check_extra_headers _((char*));
void sf_add_extra_header _((char*));
char* sf_get_extra_header _((ART_NUM,int));
bool is_text_zero _((char*));
char* sf_get_filename _((int));
char* sf_cmd_fname _((char*));
bool sf_do_command _((char*,bool_int));
char* sf_freeform _((char*,char*));
bool sf_do_line _((char*,bool_int));
void sf_do_file _((char*));
int score_match _((char*,int));
int sf_score _((ART_NUM));
char* sf_missing_score _((char*));
void sf_append _((char*));
char* sf_get_line _((ART_NUM,int));
void sf_print_match _((int));
void sf_exclude_file _((char*));
void sf_edit_file _((char*));