xref: /openbsd/gnu/usr.bin/perl/scope_types.h (revision f2a19305)
1 /* -*- mode: C; buffer-read-only: t -*-
2 
3       Copyright (C) 2022 by Larry Wall and others
4 
5       You may distribute under the terms of either the GNU General Public
6       License or the Artistic License, as specified in the README file.
7 
8    !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
9    This file is built by regen/scope_types.pl.
10    Any changes made here will be lost!
11    The defines and contents of the leave_scope_arg_counts[] array
12    must match. To add a new type modify the __DATA__ section in
13    regen/scope_types.pl and run `make regen` to rebuild the file.
14  */
15 
16 /* zero args */
17 
18 #define SAVEt_ALLOC                0
19 #define SAVEt_CLEARPADRANGE        1
20 #define SAVEt_CLEARSV              2
21 #define SAVEt_REGCONTEXT           3
22 
23 /* one arg */
24 
25 #define SAVEt_TMPSFLOOR            4
26 #define SAVEt_BOOL                 5
27 #define SAVEt_COMPILE_WARNINGS     6
28 #define SAVEt_CURCOP_WARNINGS      7
29 #define SAVEt_COMPPAD              8
30 #define SAVEt_FREECOPHH            9
31 #define SAVEt_FREEOP              10
32 #define SAVEt_FREEPV              11
33 #define SAVEt_FREESV              12
34 #define SAVEt_I16                 13
35 #define SAVEt_I32_SMALL           14
36 #define SAVEt_I8                  15
37 #define SAVEt_INT_SMALL           16
38 #define SAVEt_MORTALIZESV         17
39 #define SAVEt_NSTAB               18
40 #define SAVEt_OP                  19
41 #define SAVEt_PARSER              20
42 #define SAVEt_STACK_POS           21
43 #define SAVEt_READONLY_OFF        22
44 #define SAVEt_FREEPADNAME         23
45 #define SAVEt_STRLEN_SMALL        24
46 #define SAVEt_FREERCPV            25
47 
48 /* two args */
49 
50 #define SAVEt_AV                  26
51 #define SAVEt_DESTRUCTOR          27
52 #define SAVEt_DESTRUCTOR_X        28
53 #define SAVEt_GENERIC_PVREF       29
54 #define SAVEt_GENERIC_SVREF       30
55 #define SAVEt_GP                  31
56 #define SAVEt_GVSV                32
57 #define SAVEt_HINTS               33
58 #define SAVEt_HPTR                34
59 #define SAVEt_HV                  35
60 #define SAVEt_I32                 36
61 #define SAVEt_INT                 37
62 #define SAVEt_ITEM                38
63 #define SAVEt_IV                  39
64 #define SAVEt_LONG                40
65 #define SAVEt_PPTR                41
66 #define SAVEt_SAVESWITCHSTACK     42
67 #define SAVEt_SHARED_PVREF        43
68 #define SAVEt_SPTR                44
69 #define SAVEt_STRLEN              45
70 #define SAVEt_SV                  46
71 #define SAVEt_SVREF               47
72 #define SAVEt_VPTR                48
73 #define SAVEt_ADELETE             49
74 #define SAVEt_APTR                50
75 #define SAVEt_RCPV                51
76 
77 /* three args */
78 
79 #define SAVEt_HELEM               52
80 #define SAVEt_PADSV_AND_MORTALIZE 53
81 #define SAVEt_SET_SVFLAGS         54
82 #define SAVEt_GVSLOT              55
83 #define SAVEt_AELEM               56
84 #define SAVEt_DELETE              57
85 #define SAVEt_HINTS_HH            58
86 
87 static const U8 leave_scope_arg_counts[] = {
88     0, /* SAVEt_ALLOC               */
89     0, /* SAVEt_CLEARPADRANGE       */
90     0, /* SAVEt_CLEARSV             */
91     0, /* SAVEt_REGCONTEXT          */
92     1, /* SAVEt_TMPSFLOOR           */
93     1, /* SAVEt_BOOL                */
94     1, /* SAVEt_COMPILE_WARNINGS    */
95     1, /* SAVEt_CURCOP_WARNINGS     */
96     1, /* SAVEt_COMPPAD             */
97     1, /* SAVEt_FREECOPHH           */
98     1, /* SAVEt_FREEOP              */
99     1, /* SAVEt_FREEPV              */
100     1, /* SAVEt_FREESV              */
101     1, /* SAVEt_I16                 */
102     1, /* SAVEt_I32_SMALL           */
103     1, /* SAVEt_I8                  */
104     1, /* SAVEt_INT_SMALL           */
105     1, /* SAVEt_MORTALIZESV         */
106     1, /* SAVEt_NSTAB               */
107     1, /* SAVEt_OP                  */
108     1, /* SAVEt_PARSER              */
109     1, /* SAVEt_STACK_POS           */
110     1, /* SAVEt_READONLY_OFF        */
111     1, /* SAVEt_FREEPADNAME         */
112     1, /* SAVEt_STRLEN_SMALL        */
113     1, /* SAVEt_FREERCPV            */
114     2, /* SAVEt_AV                  */
115     2, /* SAVEt_DESTRUCTOR          */
116     2, /* SAVEt_DESTRUCTOR_X        */
117     2, /* SAVEt_GENERIC_PVREF       */
118     2, /* SAVEt_GENERIC_SVREF       */
119     2, /* SAVEt_GP                  */
120     2, /* SAVEt_GVSV                */
121     2, /* SAVEt_HINTS               */
122     2, /* SAVEt_HPTR                */
123     2, /* SAVEt_HV                  */
124     2, /* SAVEt_I32                 */
125     2, /* SAVEt_INT                 */
126     2, /* SAVEt_ITEM                */
127     2, /* SAVEt_IV                  */
128     2, /* SAVEt_LONG                */
129     2, /* SAVEt_PPTR                */
130     2, /* SAVEt_SAVESWITCHSTACK     */
131     2, /* SAVEt_SHARED_PVREF        */
132     2, /* SAVEt_SPTR                */
133     2, /* SAVEt_STRLEN              */
134     2, /* SAVEt_SV                  */
135     2, /* SAVEt_SVREF               */
136     2, /* SAVEt_VPTR                */
137     2, /* SAVEt_ADELETE             */
138     2, /* SAVEt_APTR                */
139     2, /* SAVEt_RCPV                */
140     3, /* SAVEt_HELEM               */
141     3, /* SAVEt_PADSV_AND_MORTALIZE */
142     3, /* SAVEt_SET_SVFLAGS         */
143     3, /* SAVEt_GVSLOT              */
144     3, /* SAVEt_AELEM               */
145     3, /* SAVEt_DELETE              */
146     3  /* SAVEt_HINTS_HH            */
147 };
148 
149 #define MAX_SAVEt 58
150 
151 /* ex: set ro ft=c: */
152