<commit_before>/*
 * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
 * See the copyright notice in the ACK home directory, in the file "Copyright".
 */
/* $Header$ */

/* offsets of interesting fields in EM-pattern */

#define PO_HASH         0
#define PO_NEXT         1
#define PO_MATCH        3

#define ILLHASH 0177777


/* Commands for codegenerator, in low order 5 bits of byte */

#define DO_NEXTEM       0
#define DO_MATCH        1
#define DO_XMATCH	2
#define DO_XXMATCH	3
#define DO_REMOVE       4
#define DO_DEALLOCATE   5
#define DO_REALLOCATE   6
#define DO_ALLOCATE     7
#define DO_MOVE         10
#define DO_ERASE        11
#define DO_TOKREPLACE   12
#define DO_EMREPLACE    13
#define DO_COST         14
#define DO_RETURN       15
#define DO_COERC        16
#define DO_PRETURN	17
#define DO_RREMOVE	18
#define DO_INSTR	19
#define DO_TEST		20
#define DO_DLINE	21
#define DO_SETCC	22

#ifndef MAXATT
#define MAXATT TOKENSIZE
#endif

typedef struct instance {
	short in_which;
#               define IN_COPY          1
#		define IN_MEMB		2
#               define IN_RIDENT        3
#               define IN_ALLOC         4
#               define IN_DESCR         5
#               define IN_S_DESCR       6
#               define IN_D_DESCR       7
	short in_info[MAXATT+1];
} inst_t,*inst_p;

typedef struct set {
	short set_size;
	short set_val[SETSIZE];
} set_t,*set_p;

typedef struct {
	short m_set1;           /* number of tokenexpr in move: from */
	short m_expr1;          /* optional expression */
	short m_set2;           /* number of tokenexpr in move: to */
	short m_expr2;          /* optional expression */
	short m_cindex;         /* code index to really do it */
} move_t, *move_p;
<commit_msg>Added DO_TOSTACK<commit_after>/*
 * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
 * See the copyright notice in the ACK home directory, in the file "Copyright".
 */
/* $Header$ */

/* offsets of interesting fields in EM-pattern */

#define PO_HASH         0
#define PO_NEXT         1
#define PO_MATCH        3

#define ILLHASH 0177777


/* Commands for codegenerator, in low order 5 bits of byte */

#define DO_NEXTEM       0
#define DO_MATCH        1
#define DO_XMATCH	2
#define DO_XXMATCH	3
#define DO_REMOVE       4
#define DO_DEALLOCATE   5
#define DO_REALLOCATE   6
#define DO_ALLOCATE     7
#define DO_MOVE         10
#define DO_ERASE        11
#define DO_TOKREPLACE   12
#define DO_EMREPLACE    13
#define DO_COST         14
#define DO_RETURN       15
#define DO_COERC        16
#define DO_PRETURN	17
#define DO_RREMOVE	18
#define DO_INSTR	19
#define DO_TEST		20
#define DO_DLINE	21
#define DO_SETCC	22
#define DO_TOSTACK	23

#ifndef MAXATT
#define MAXATT TOKENSIZE
#endif

typedef struct instance {
	short in_which;
#               define IN_COPY          1
#		define IN_MEMB		2
#               define IN_RIDENT        3
#               define IN_ALLOC         4
#               define IN_DESCR         5
#               define IN_S_DESCR       6
#               define IN_D_DESCR       7
	short in_info[MAXATT+1];
} inst_t,*inst_p;

typedef struct set {
	short set_size;
	short set_val[SETSIZE];
} set_t,*set_p;

typedef struct {
	short m_set1;           /* number of tokenexpr in move: from */
	short m_expr1;          /* optional expression */
	short m_set2;           /* number of tokenexpr in move: to */
	short m_expr2;          /* optional expression */
	short m_cindex;         /* code index to really do it */
} move_t, *move_p;

{'fraction_non_alphanumeric': 0.06836879432624113, 'fraction_numerical': 0.035177304964539004, 'mean_word_length': 2.261794634597595, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6359792', 'n_tokens_mistral': 1249, 'n_tokens_neox': 1171, 'n_words': 394}