From cd7d784879026948126140d82b84bb39bb779c2e Mon Sep 17 00:00:00 2001 From: "Paul \"LeoNerd\" Evans" Date: Sun, 27 Nov 2022 15:27:50 +0000 Subject: Define a PL_infix_plugin hook, of a similar style to PL_keyword_plugin Runs for identifier-named custom infix operators and sequences of non-identifier symbol characters. Defines multiple precedence levels for custom infix operators that fit alongside exponentiation, multiplication, addition, or relational comparision operators, as well as a "high" and "low" at either end. --- perly.h | 90 +++++++++++++++++++++++++++++++++++------------------------------ 1 file changed, 48 insertions(+), 42 deletions(-) (limited to 'perly.h') diff --git a/perly.h b/perly.h index 29826de799..60fcf6d891 100644 --- a/perly.h +++ b/perly.h @@ -127,47 +127,53 @@ extern int yydebug; FUNC = 326, UNIOP = 327, LSTOP = 328, - MULOP = 329, - ADDOP = 330, - DOLSHARP = 331, - HASHBRACK = 332, - NOAMP = 333, - COLONATTR = 334, - FORMLBRACK = 335, - FORMRBRACK = 336, - SUBLEXSTART = 337, - SUBLEXEND = 338, - PREC_LOW = 339, - OROP = 340, - ANDOP = 341, - NOTOP = 342, - ASSIGNOP = 343, - PERLY_QUESTION_MARK = 344, - PERLY_COLON = 345, - OROR = 346, - DORDOR = 347, - ANDAND = 348, - BITOROP = 349, - BITANDOP = 350, - CHEQOP = 351, - NCEQOP = 352, - CHRELOP = 353, - NCRELOP = 354, - SHIFTOP = 355, - MATCHOP = 356, - PERLY_EXCLAMATION_MARK = 357, - PERLY_TILDE = 358, - UMINUS = 359, - REFGEN = 360, - POWOP = 361, - PREINC = 362, - PREDEC = 363, - POSTINC = 364, - POSTDEC = 365, - POSTJOIN = 366, - ARROW = 367, - PERLY_PAREN_CLOSE = 368, - PERLY_PAREN_OPEN = 369 + POWOP = 329, + MULOP = 330, + ADDOP = 331, + DOLSHARP = 332, + HASHBRACK = 333, + NOAMP = 334, + COLONATTR = 335, + FORMLBRACK = 336, + FORMRBRACK = 337, + SUBLEXSTART = 338, + SUBLEXEND = 339, + PLUGLOWOP = 340, + PLUGRELOP = 341, + PLUGADDOP = 342, + PLUGMULOP = 343, + PLUGPOWOP = 344, + PLUGHIGHOP = 345, + PREC_LOW = 346, + OROP = 347, + ANDOP = 348, + NOTOP = 349, + ASSIGNOP = 350, + PERLY_QUESTION_MARK = 351, + PERLY_COLON = 352, + OROR = 353, + DORDOR = 354, + ANDAND = 355, + BITOROP = 356, + BITANDOP = 357, + CHEQOP = 358, + NCEQOP = 359, + CHRELOP = 360, + NCRELOP = 361, + SHIFTOP = 362, + MATCHOP = 363, + PERLY_EXCLAMATION_MARK = 364, + PERLY_TILDE = 365, + UMINUS = 366, + REFGEN = 367, + PREINC = 368, + PREDEC = 369, + POSTINC = 370, + POSTDEC = 371, + POSTJOIN = 372, + ARROW = 373, + PERLY_PAREN_CLOSE = 374, + PERLY_PAREN_OPEN = 375 }; #endif @@ -220,6 +226,6 @@ int yyparse (void); /* Generated from: - * d3f87734f869a9179fa48a601c04af8339f2360e854d5e6f2e8107a579d753a1 perly.y + * 21f50be92bd623859b76b35d4165bcd0fbe33785929bfc0a6a522d266e86de40 perly.y * acf1cbfd2545faeaaa58b1cf0cf9d7f98b5be0752eb7a54528ef904a9e2e1ca7 regen_perly.pl * ex: set ro: */ -- cgit v1.2.1