Commit | Line | Data |
---|---|---|
8261f8eb NC |
1 | /* -*- buffer-read-only: t -*- |
2 | * | |
3 | * overload.c | |
4 | * | |
c4ac9b44 DM |
5 | * Copyright (C) 1997, 1998, 2000, 2001, 2005, 2006, 2007, 2011 |
6 | * by Larry Wall and others | |
8261f8eb NC |
7 | * |
8 | * You may distribute under the terms of either the GNU General Public | |
9 | * License or the Artistic License, as specified in the README file. | |
10 | * | |
78102347 NC |
11 | * !!!!!!! DO NOT EDIT THIS FILE !!!!!!! |
12 | * This file is built by regen/overload.pl. | |
13 | * Any changes made here will be lost! | |
8261f8eb NC |
14 | */ |
15 | ||
16 | #define AMG_id2name(id) (PL_AMG_names[id]+1) | |
82af6593 | 17 | #define AMG_id2namelen(id) (PL_AMG_namelens[id]-1) |
8261f8eb | 18 | |
2e1c5ef0 | 19 | static const U8 PL_AMG_namelens[NofAMmeth] = { |
d279ab82 NC |
20 | 2, |
21 | 4, | |
22 | 4, | |
23 | 4, | |
24 | 4, | |
25 | 4, | |
26 | 3, | |
27 | 3, | |
28 | 5, | |
29 | 3, | |
30 | 3, | |
31 | 2, | |
32 | 2, | |
33 | 4, | |
34 | 4, | |
35 | 3, | |
36 | 4, | |
37 | 2, | |
38 | 3, | |
39 | 2, | |
40 | 3, | |
41 | 3, | |
42 | 3, | |
43 | 3, | |
44 | 3, | |
45 | 3, | |
46 | 3, | |
47 | 3, | |
48 | 3, | |
49 | 9, | |
50 | 2, | |
51 | 3, | |
52 | 2, | |
53 | 3, | |
54 | 2, | |
55 | 3, | |
56 | 2, | |
57 | 3, | |
58 | 2, | |
59 | 3, | |
60 | 3, | |
61 | 4, | |
62 | 3, | |
63 | 4, | |
64 | 3, | |
65 | 4, | |
66 | 2, | |
67 | 3, | |
68 | 2, | |
69 | 3, | |
70 | 2, | |
71 | 3, | |
72 | 4, | |
73 | 4, | |
74 | 2, | |
75 | 6, | |
76 | 4, | |
77 | 4, | |
78 | 4, | |
79 | 4, | |
80 | 5, | |
81 | 2, | |
82 | 3, | |
83 | 2, | |
84 | 3, | |
85 | 3, | |
9846fe22 | 86 | 3, |
8c34e50d | 87 | 3 |
d279ab82 NC |
88 | }; |
89 | ||
2e1c5ef0 | 90 | static const char * const PL_AMG_names[NofAMmeth] = { |
8261f8eb NC |
91 | /* Names kept in the symbol table. fallback => "()", the rest has |
92 | "(" prepended. The only other place in perl which knows about | |
93 | this convention is AMG_id2name (used for debugging output and | |
94 | 'nomethod' only), the only other place which has it hardwired is | |
95 | overload.pm. */ | |
c4ac9b44 DM |
96 | "()", /* fallback */ |
97 | "(${}", /* to_sv */ | |
98 | "(@{}", /* to_av */ | |
99 | "(%{}", /* to_hv */ | |
100 | "(*{}", /* to_gv */ | |
101 | "(&{}", /* to_cv */ | |
102 | "(++", /* inc */ | |
103 | "(--", /* dec */ | |
104 | "(bool", /* bool_ */ | |
105 | "(0+", /* numer */ | |
106 | "(\"\"", /* string */ | |
107 | "(!", /* not */ | |
108 | "(=", /* copy */ | |
109 | "(abs", /* abs */ | |
110 | "(neg", /* neg */ | |
111 | "(<>", /* iter */ | |
112 | "(int", /* int */ | |
113 | "(<", /* lt */ | |
114 | "(<=", /* le */ | |
115 | "(>", /* gt */ | |
116 | "(>=", /* ge */ | |
117 | "(==", /* eq */ | |
118 | "(!=", /* ne */ | |
119 | "(lt", /* slt */ | |
120 | "(le", /* sle */ | |
121 | "(gt", /* sgt */ | |
122 | "(ge", /* sge */ | |
123 | "(eq", /* seq */ | |
124 | "(ne", /* sne */ | |
125 | "(nomethod", /* nomethod */ | |
126 | "(+", /* add */ | |
127 | "(+=", /* add_ass */ | |
128 | "(-", /* subtr */ | |
129 | "(-=", /* subtr_ass */ | |
130 | "(*", /* mult */ | |
131 | "(*=", /* mult_ass */ | |
132 | "(/", /* div */ | |
133 | "(/=", /* div_ass */ | |
134 | "(%", /* modulo */ | |
135 | "(%=", /* modulo_ass */ | |
136 | "(**", /* pow */ | |
137 | "(**=", /* pow_ass */ | |
138 | "(<<", /* lshift */ | |
139 | "(<<=", /* lshift_ass */ | |
140 | "(>>", /* rshift */ | |
141 | "(>>=", /* rshift_ass */ | |
142 | "(&", /* band */ | |
143 | "(&=", /* band_ass */ | |
144 | "(|", /* bor */ | |
145 | "(|=", /* bor_ass */ | |
146 | "(^", /* bxor */ | |
147 | "(^=", /* bxor_ass */ | |
148 | "(<=>", /* ncmp */ | |
149 | "(cmp", /* scmp */ | |
150 | "(~", /* compl */ | |
151 | "(atan2", /* atan2 */ | |
152 | "(cos", /* cos */ | |
153 | "(sin", /* sin */ | |
154 | "(exp", /* exp */ | |
155 | "(log", /* log */ | |
156 | "(sqrt", /* sqrt */ | |
157 | "(x", /* repeat */ | |
158 | "(x=", /* repeat_ass */ | |
159 | "(.", /* concat */ | |
160 | "(.=", /* concat_ass */ | |
161 | "(~~", /* smart */ | |
162 | "(-X", /* ftest */ | |
8c34e50d | 163 | "(qr" |
8261f8eb | 164 | }; |
ce716c52 NC |
165 | |
166 | /* ex: set ro: */ |