181 lines
3.6 KiB
PHP
181 lines
3.6 KiB
PHP
/* -*- buffer-read-only: t -*-
|
|
*
|
|
* overload.inc
|
|
*
|
|
* Copyright (C) 1997, 1998, 2000, 2001, 2005, 2006, 2007, 2011
|
|
* by Larry Wall and others
|
|
*
|
|
* You may distribute under the terms of either the GNU General Public
|
|
* License or the Artistic License, as specified in the README file.
|
|
*
|
|
* !!!!!!! DO NOT EDIT THIS FILE !!!!!!!
|
|
* This file is built by regen/overload.pl.
|
|
* Any changes made here will be lost!
|
|
*/
|
|
|
|
#define AMG_id2name(id) (PL_AMG_names[id]+1)
|
|
#define AMG_id2namelen(id) (PL_AMG_namelens[id]-1)
|
|
|
|
static const U8 PL_AMG_namelens[NofAMmeth] = {
|
|
2,
|
|
4,
|
|
4,
|
|
4,
|
|
4,
|
|
4,
|
|
3,
|
|
3,
|
|
5,
|
|
3,
|
|
3,
|
|
2,
|
|
2,
|
|
4,
|
|
4,
|
|
3,
|
|
4,
|
|
2,
|
|
3,
|
|
2,
|
|
3,
|
|
3,
|
|
3,
|
|
3,
|
|
3,
|
|
3,
|
|
3,
|
|
3,
|
|
3,
|
|
9,
|
|
2,
|
|
3,
|
|
2,
|
|
3,
|
|
2,
|
|
3,
|
|
2,
|
|
3,
|
|
2,
|
|
3,
|
|
3,
|
|
4,
|
|
3,
|
|
4,
|
|
3,
|
|
4,
|
|
2,
|
|
3,
|
|
3,
|
|
4,
|
|
2,
|
|
3,
|
|
3,
|
|
4,
|
|
2,
|
|
3,
|
|
3,
|
|
4,
|
|
4,
|
|
4,
|
|
2,
|
|
3,
|
|
6,
|
|
4,
|
|
4,
|
|
4,
|
|
4,
|
|
5,
|
|
2,
|
|
3,
|
|
2,
|
|
3,
|
|
3,
|
|
3,
|
|
3
|
|
};
|
|
|
|
static const char * const PL_AMG_names[NofAMmeth] = {
|
|
/* Names kept in the symbol table. fallback => "()", the rest has
|
|
"(" prepended. The only other place in perl which knows about
|
|
this convention is AMG_id2name (used for debugging output and
|
|
'nomethod' only), the only other place which has it hardwired is
|
|
overload.pm. */
|
|
"()", /* fallback */
|
|
"(${}", /* to_sv */
|
|
"(@{}", /* to_av */
|
|
"(%{}", /* to_hv */
|
|
"(*{}", /* to_gv */
|
|
"(&{}", /* to_cv */
|
|
"(++", /* inc */
|
|
"(--", /* dec */
|
|
"(bool", /* bool_ */
|
|
"(0+", /* numer */
|
|
"(\"\"", /* string */
|
|
"(!", /* not */
|
|
"(=", /* copy */
|
|
"(abs", /* abs */
|
|
"(neg", /* neg */
|
|
"(<>", /* iter */
|
|
"(int", /* int */
|
|
"(<", /* lt */
|
|
"(<=", /* le */
|
|
"(>", /* gt */
|
|
"(>=", /* ge */
|
|
"(==", /* eq */
|
|
"(!=", /* ne */
|
|
"(lt", /* slt */
|
|
"(le", /* sle */
|
|
"(gt", /* sgt */
|
|
"(ge", /* sge */
|
|
"(eq", /* seq */
|
|
"(ne", /* sne */
|
|
"(nomethod", /* nomethod */
|
|
"(+", /* add */
|
|
"(+=", /* add_ass */
|
|
"(-", /* subtr */
|
|
"(-=", /* subtr_ass */
|
|
"(*", /* mult */
|
|
"(*=", /* mult_ass */
|
|
"(/", /* div */
|
|
"(/=", /* div_ass */
|
|
"(%", /* modulo */
|
|
"(%=", /* modulo_ass */
|
|
"(**", /* pow */
|
|
"(**=", /* pow_ass */
|
|
"(<<", /* lshift */
|
|
"(<<=", /* lshift_ass */
|
|
"(>>", /* rshift */
|
|
"(>>=", /* rshift_ass */
|
|
"(&", /* band */
|
|
"(&=", /* band_ass */
|
|
"(&.", /* sband */
|
|
"(&.=", /* sband_ass */
|
|
"(|", /* bor */
|
|
"(|=", /* bor_ass */
|
|
"(|.", /* sbor */
|
|
"(|.=", /* sbor_ass */
|
|
"(^", /* bxor */
|
|
"(^=", /* bxor_ass */
|
|
"(^.", /* sbxor */
|
|
"(^.=", /* sbxor_ass */
|
|
"(<=>", /* ncmp */
|
|
"(cmp", /* scmp */
|
|
"(~", /* compl */
|
|
"(~.", /* scompl */
|
|
"(atan2", /* atan2 */
|
|
"(cos", /* cos */
|
|
"(sin", /* sin */
|
|
"(exp", /* exp */
|
|
"(log", /* log */
|
|
"(sqrt", /* sqrt */
|
|
"(x", /* repeat */
|
|
"(x=", /* repeat_ass */
|
|
"(.", /* concat */
|
|
"(.=", /* concat_ass */
|
|
"(~~", /* smart */
|
|
"(-X", /* ftest */
|
|
"(qr"
|
|
};
|
|
|
|
/* ex: set ro: */
|