This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Add overload types for string-specifc bitops
[perl5.git] / overload.h
CommitLineData
bab3dc31
NC
1/* -*- buffer-read-only: t -*-
2 *
3 * overload.h
4 *
c4ac9b44
DM
5 * Copyright (C) 1997, 1998, 2000, 2001, 2005, 2006, 2007, 2011
6 * by Larry Wall and others
bab3dc31
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!
bab3dc31
NC
14 */
15
16enum {
218eba0d
DM
17 fallback_amg, /* 0x00 fallback */
18 to_sv_amg, /* 0x01 ${} */
19 to_av_amg, /* 0x02 @{} */
20 to_hv_amg, /* 0x03 %{} */
21 to_gv_amg, /* 0x04 *{} */
22 to_cv_amg, /* 0x05 &{} */
23 inc_amg, /* 0x06 ++ */
24 dec_amg, /* 0x07 -- */
25 bool__amg, /* 0x08 bool */
26 numer_amg, /* 0x09 0+ */
27 string_amg, /* 0x0a "" */
28 not_amg, /* 0x0b ! */
29 copy_amg, /* 0x0c = */
30 abs_amg, /* 0x0d abs */
31 neg_amg, /* 0x0e neg */
32 iter_amg, /* 0x0f <> */
33 int_amg, /* 0x10 int */
34 lt_amg, /* 0x11 < */
35 le_amg, /* 0x12 <= */
36 gt_amg, /* 0x13 > */
37 ge_amg, /* 0x14 >= */
38 eq_amg, /* 0x15 == */
39 ne_amg, /* 0x16 != */
40 slt_amg, /* 0x17 lt */
41 sle_amg, /* 0x18 le */
42 sgt_amg, /* 0x19 gt */
43 sge_amg, /* 0x1a ge */
44 seq_amg, /* 0x1b eq */
45 sne_amg, /* 0x1c ne */
46 nomethod_amg, /* 0x1d nomethod */
47 add_amg, /* 0x1e + */
48 add_ass_amg, /* 0x1f += */
49 subtr_amg, /* 0x20 - */
50 subtr_ass_amg, /* 0x21 -= */
51 mult_amg, /* 0x22 * */
52 mult_ass_amg, /* 0x23 *= */
53 div_amg, /* 0x24 / */
54 div_ass_amg, /* 0x25 /= */
55 modulo_amg, /* 0x26 % */
56 modulo_ass_amg, /* 0x27 %= */
57 pow_amg, /* 0x28 ** */
58 pow_ass_amg, /* 0x29 **= */
59 lshift_amg, /* 0x2a << */
60 lshift_ass_amg, /* 0x2b <<= */
61 rshift_amg, /* 0x2c >> */
62 rshift_ass_amg, /* 0x2d >>= */
63 band_amg, /* 0x2e & */
64 band_ass_amg, /* 0x2f &= */
7dd64841
FC
65 sband_amg, /* 0x30 &. */
66 sband_ass_amg, /* 0x31 &.= */
67 bor_amg, /* 0x32 | */
68 bor_ass_amg, /* 0x33 |= */
69 sbor_amg, /* 0x34 |. */
70 sbor_ass_amg, /* 0x35 |.= */
71 bxor_amg, /* 0x36 ^ */
72 bxor_ass_amg, /* 0x37 ^= */
73 sbxor_amg, /* 0x38 ^. */
74 sbxor_ass_amg, /* 0x39 ^.= */
75 ncmp_amg, /* 0x3a <=> */
76 scmp_amg, /* 0x3b cmp */
77 compl_amg, /* 0x3c ~ */
78 scompl_amg, /* 0x3d ~. */
79 atan2_amg, /* 0x3e atan2 */
80 cos_amg, /* 0x3f cos */
81 sin_amg, /* 0x40 sin */
82 exp_amg, /* 0x41 exp */
83 log_amg, /* 0x42 log */
84 sqrt_amg, /* 0x43 sqrt */
85 repeat_amg, /* 0x44 x */
86 repeat_ass_amg, /* 0x45 x= */
87 concat_amg, /* 0x46 . */
88 concat_ass_amg, /* 0x47 .= */
89 smart_amg, /* 0x48 ~~ */
90 ftest_amg, /* 0x49 -X */
91 regexp_amg, /* 0x4a qr */
bab3dc31
NC
92 max_amg_code
93 /* Do not leave a trailing comma here. C9X allows it, C89 doesn't. */
94};
95
bab3dc31 96#define NofAMmeth max_amg_code
bab3dc31 97
ce716c52 98/* ex: set ro: */