File: sim.h

package info (click to toggle)
fpc 3.2.2%2Bdfsg-49
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 341,452 kB
  • sloc: pascal: 3,820,194; xml: 194,356; ansic: 9,637; asm: 8,482; java: 5,346; sh: 4,813; yacc: 3,956; makefile: 2,705; lex: 2,661; javascript: 2,454; sql: 929; php: 474; cpp: 145; perl: 136; sed: 132; csh: 34; tcl: 7
file content (39 lines) | stat: -rw-r--r-- 1,236 bytes parent folder | download | duplicates (15)
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
/*	This file is part of the software similarity tester SIM.
	Written by Dick Grune, Vrije Universiteit, Amsterdam.
	$Id: sim.h,v 2.7 2005/02/20 17:03:03 dick Exp $
*/

#include	<stdio.h>

struct position {
	/* position of first and last token of a chunk */
	struct position *ps_next;
	int ps_type;		/* first = 0, last = 1 */
	unsigned int ps_tk_cnt;	/* in tokens; set by add_run() in Pass 1 */
	unsigned int ps_nl_cnt;	/* same, in line numbers; set by Pass2(),
				   used by Pass3() to report line numbers
				*/
};

struct text {
	char *tx_fname;		/* the file name */
	struct position *tx_pos;/* list of positions in this file that are
				   part of a chunk; sorted and updated by
				   Pass 2
				*/
	unsigned int tx_start;	/* positions in TokenArray[] for the text */
	unsigned int tx_limit;
	unsigned int tx_nl_start;/* possibly newline pointer for pass2 */
	unsigned int tx_nl_limit;
};

extern unsigned int MinRunSize;
extern int PageWidth;
extern FILE *OutputFile;
extern FILE *DebugFile;

extern struct text *Text;		/* Text[], one for each input file */
extern int NumberOfTexts;		/* number of text records */
extern int NumberOfNewTexts;		/* number of new text records */

extern char *progname;			/* for error reporting */