This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Make PL_AMG_names and PL_AMG_namelens static
[perl5.git] / overload.c
CommitLineData
8261f8eb
NC
1/* -*- buffer-read-only: t -*-
2 *
3 * overload.c
4 *
5 * Copyright (C) 1997, 1998, 2000, 2001, 2005, 2006, 2007 by Larry Wall
6 * 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 overload.pl
13 */
14
15#define AMG_id2name(id) (PL_AMG_names[id]+1)
82af6593 16#define AMG_id2namelen(id) (PL_AMG_namelens[id]-1)
8261f8eb 17
2e1c5ef0 18static const U8 PL_AMG_namelens[NofAMmeth] = {
d279ab82
NC
19 2,
20 4,
21 4,
22 4,
23 4,
24 4,
25 3,
26 3,
27 5,
28 3,
29 3,
30 2,
31 2,
32 4,
33 4,
34 3,
35 4,
36 2,
37 3,
38 2,
39 3,
40 3,
41 3,
42 3,
43 3,
44 3,
45 3,
46 3,
47 3,
48 9,
49 2,
50 3,
51 2,
52 3,
53 2,
54 3,
55 2,
56 3,
57 2,
58 3,
59 3,
60 4,
61 3,
62 4,
63 3,
64 4,
65 2,
66 3,
67 2,
68 3,
69 2,
70 3,
71 4,
72 4,
73 2,
74 6,
75 4,
76 4,
77 4,
78 4,
79 5,
80 2,
81 3,
82 2,
83 3,
84 3,
85 7
86};
87
2e1c5ef0 88static const char * const PL_AMG_names[NofAMmeth] = {
8261f8eb
NC
89 /* Names kept in the symbol table. fallback => "()", the rest has
90 "(" prepended. The only other place in perl which knows about
91 this convention is AMG_id2name (used for debugging output and
92 'nomethod' only), the only other place which has it hardwired is
93 overload.pm. */
94 "()",
95 "(${}",
96 "(@{}",
97 "(%{}",
98 "(*{}",
99 "(&{}",
100 "(++",
101 "(--",
102 "(bool",
103 "(0+",
104 "(\"\"",
105 "(!",
106 "(=",
107 "(abs",
108 "(neg",
109 "(<>",
110 "(int",
111 "(<",
112 "(<=",
113 "(>",
114 "(>=",
115 "(==",
116 "(!=",
117 "(lt",
118 "(le",
119 "(gt",
120 "(ge",
121 "(eq",
122 "(ne",
123 "(nomethod",
124 "(+",
125 "(+=",
126 "(-",
127 "(-=",
128 "(*",
129 "(*=",
130 "(/",
131 "(/=",
132 "(%",
133 "(%=",
134 "(**",
135 "(**=",
136 "(<<",
137 "(<<=",
138 "(>>",
139 "(>>=",
140 "(&",
141 "(&=",
142 "(|",
143 "(|=",
144 "(^",
145 "(^=",
146 "(<=>",
147 "(cmp",
148 "(~",
149 "(atan2",
150 "(cos",
151 "(sin",
152 "(exp",
153 "(log",
154 "(sqrt",
155 "(x",
156 "(x=",
157 "(.",
158 "(.=",
159 "(~~",
160 "DESTROY"
161};