This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
fix -DPERL_GLOBAL_STRUCT builds broken with the hash merge
[perl5.git] / overload.c
... / ...
CommitLineData
1/* -*- buffer-read-only: t -*-
2 *
3 * overload.c
4 *
5 * Copyright (C) 1997, 1998, 2000, 2001, 2005, 2006, 2007, 2011
6 * by Larry Wall and others
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 *
11 * !!!!!!! DO NOT EDIT THIS FILE !!!!!!!
12 * This file is built by regen/overload.pl.
13 * Any changes made here will be lost!
14 */
15
16#define AMG_id2name(id) (PL_AMG_names[id]+1)
17#define AMG_id2namelen(id) (PL_AMG_namelens[id]-1)
18
19static const U8 PL_AMG_namelens[NofAMmeth] = {
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,
86 3,
87 3
88};
89
90static const char * const PL_AMG_names[NofAMmeth] = {
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. */
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 */
163 "(qr"
164};
165
166/* ex: set ro: */