1 /* -*- buffer-read-only: t -*-
2 * !!!!!!! DO NOT EDIT THIS FILE !!!!!!!
3 * This file is built by regen/keywords.pl from its data.
4 * Any changes made here will be lost!
8 #define PERL_IN_KEYWORDS_C
14 Perl_keyword (pTHX_ const char *name, I32 len, bool all_keywords)
16 PERL_ARGS_ASSERT_KEYWORD;
20 case 1: /* 5 tokens of length 1 */
52 case 2: /* 19 tokens of length 2 */
74 return (all_keywords || FEATURE_FC_IS_ENABLED ? -KEY_fc : 0);
206 case 3: /* 30 tokens of length 3 */
210 if (name[1] == 'N' &&
273 if (name[1] == 'i' &&
305 if (name[1] == 'o' &&
314 if (name[1] == 'e' &&
336 return (all_keywords || FEATURE_ISA_IS_ENABLED ? -KEY_isa : 0);
346 if (name[1] == 'o' &&
355 if (name[1] == 'a' &&
364 if (name[1] == 'o' &&
426 if (name[1] == 'e' &&
440 return (all_keywords || FEATURE_SAY_IS_ENABLED ? KEY_say : 0);
479 return (all_keywords || FEATURE_TRY_IS_ENABLED ? KEY_try : 0);
489 if (name[1] == 's' &&
498 if (name[1] == 'e' &&
507 if (name[1] == 'o' &&
519 case 4: /* 40 tokens of length 4 */
523 if (name[1] == 'N' &&
533 if (name[1] == 'i' &&
543 if (name[1] == 'h' &&
553 if (name[1] == 'u' &&
566 if (name[2] == 'c' &&
575 if (name[2] == 's' &&
584 if (name[2] == 'a' &&
620 if (name[1] == 'o' &&
633 if (name[2] == 't' &&
642 if (name[2] == 'o' &&
651 if (name[2] == 't' &&
660 if (name[2] == 'e' &&
673 if (name[1] == 'o' &&
686 if (name[2] == 'y' &&
695 if (name[2] == 'l' &&
711 if (name[2] == 's' &&
720 if (name[2] == 'n' &&
729 if (name[2] == 'c' &&
742 if (name[1] == 'e' &&
752 if (name[1] == 'p' &&
765 if (name[2] == 'c' &&
774 if (name[2] == 'p' &&
783 if (name[2] == 's' &&
799 if (name[2] == 'n' &&
869 if (name[2] == 'r' &&
878 if (name[2] == 'r' &&
887 if (name[2] == 'a' &&
903 if (name[2] == 'l' &&
965 if (name[2] == 'e' &&
968 return (all_keywords || FEATURE_SWITCH_IS_ENABLED ? KEY_when : 0);
981 case 5: /* 41 tokens of length 5 */
985 if (name[1] == 'E' &&
996 if (name[1] == 'H' &&
1010 if (name[2] == 'a' &&
1020 if (name[2] == 'a' &&
1037 if (name[2] == 'e' &&
1047 if (name[2] == 'e' &&
1051 return (all_keywords || FEATURE_SWITCH_IS_ENABLED ? -KEY_break : 0);
1064 if (name[2] == 't' &&
1068 return (all_keywords || FEATURE_TRY_IS_ENABLED ? KEY_catch : 0);
1077 if (name[3] == 'i' &&
1086 if (name[3] == 'o' &&
1122 if (name[2] == 'o' &&
1132 if (name[2] == 'y' &&
1146 if (name[1] == 'e' &&
1151 return (all_keywords || FEATURE_DEFER_IS_ENABLED ? KEY_defer : 0);
1157 if (name[1] == 'l' &&
1171 if (name[2] == 'n' &&
1181 if (name[2] == 'o' &&
1195 if (name[1] == 'i' &&
1200 return (all_keywords || FEATURE_SWITCH_IS_ENABLED ? KEY_given : 0);
1209 if (name[2] == 'd' &&
1219 if (name[2] == 'c' &&
1236 if (name[2] == 'c' &&
1246 if (name[2] == 't' &&
1260 if (name[1] == 'k' &&
1271 if (name[1] == 'r' &&
1285 if (name[2] == 's' &&
1295 if (name[2] == 'd' &&
1312 if (name[2] == 'm' &&
1322 if (name[2] == 'i' &&
1332 if (name[2] == 'e' &&
1342 if (name[2] == 'l' &&
1352 if (name[2] == 'a' &&
1365 if (name[3] == 't' &&
1368 return (all_keywords || FEATURE_STATE_IS_ENABLED ? KEY_state : 0);
1374 if (name[3] == 'd' &&
1391 if (name[1] == 'i' &&
1405 if (name[2] == 'a' &&
1418 if (name[3] == 'e' &&
1453 if (name[2] == 'i' &&
1470 if (name[2] == 'i' &&
1480 if (name[2] == 'i' &&
1497 case 6: /* 33 tokens of length 6 */
1501 if (name[1] == 'c' &&
1516 if (name[2] == 'l' &&
1527 if (name[2] == 'r' &&
1542 if (name[1] == 'e' &&
1557 if (name[2] == 's' &&
1562 Perl_ck_warner_d(aTHX_ packWARN(WARN_SYNTAX), "elseif should be elsif");
1568 if (name[2] == 'i' &&
1586 if (name[2] == 'l' &&
1597 if (name[2] == 'r' &&
1612 if (name[1] == 'm' &&
1627 if (name[2] == 'n' &&
1638 if (name[2] == 's' &&
1653 if (name[1] == 's' &&
1659 if (name[4] == 't' &&
1668 if (name[4] == 'e' &&
1677 if (name[4] == 'c' &&
1686 if (name[4] == 'n' &&
1702 if (name[1] == 'r' &&
1720 if (name[3] == 'a' &&
1730 if (name[3] == 'u' &&
1744 if (name[2] == 'n' &&
1762 if (name[2] == 'a' &&
1776 if (name[3] == 'e' &&
1789 if (name[4] == 't' &&
1798 if (name[4] == 'e' &&
1820 if (name[4] == 't' &&
1829 if (name[4] == 'e' &&
1845 if (name[2] == 'c' &&
1856 if (name[2] == 'l' &&
1867 if (name[2] == 'b' &&
1878 if (name[2] == 's' &&
1901 if (name[4] == 's' &&
1910 if (name[4] == 'n' &&
1923 if (name[3] == 'a' &&
1940 if (name[1] == 'a' &&
1955 case 7: /* 31 tokens of length 7 */
1959 if (name[1] == 'E' &&
1977 if (name[3] == 'N' &&
1988 if (name[3] == 'U' &&
1993 return (all_keywords || FEATURE___SUB___IS_ENABLED ? -KEY___SUB__ : 0);
2006 if (name[1] == 'i' &&
2013 return -KEY_binmode;
2019 if (name[1] == 'o' &&
2026 return -KEY_connect;
2035 if (name[2] == 'm' &&
2041 return -KEY_dbmopen;
2052 if (name[4] == 'u' &&
2056 return (all_keywords || FEATURE_SWITCH_IS_ENABLED ? KEY_default : 0);
2062 if (name[4] == 'n' &&
2086 if (name[2] == 'n' &&
2092 return (all_keywords || FEATURE_TRY_IS_ENABLED ? KEY_finally : 0);
2098 if (name[2] == 'r' &&
2114 if (name[1] == 'e' &&
2121 if (name[5] == 'r' &&
2124 return -KEY_getpgrp;
2130 if (name[5] == 'i' &&
2133 return -KEY_getppid;
2146 if (name[1] == 'c' &&
2153 return -KEY_lcfirst;
2159 if (name[1] == 'p' &&
2166 return -KEY_opendir;
2172 if (name[1] == 'a' &&
2190 if (name[3] == 'd' &&
2195 return -KEY_readdir;
2201 if (name[3] == 'u' &&
2212 if (name[3] == 'e' &&
2217 return -KEY_reverse;
2236 if (name[3] == 'k' &&
2241 return -KEY_seekdir;
2247 if (name[3] == 'p' &&
2252 return -KEY_setpgrp;
2262 if (name[2] == 'm' &&
2268 return -KEY_shmread;
2274 if (name[2] == 'r' &&
2280 return -KEY_sprintf;
2289 if (name[3] == 'l' &&
2294 return -KEY_symlink;
2303 if (name[4] == 'a' &&
2307 return -KEY_syscall;
2313 if (name[4] == 'p' &&
2317 return -KEY_sysopen;
2323 if (name[4] == 'e' &&
2327 return -KEY_sysread;
2333 if (name[4] == 'e' &&
2337 return -KEY_sysseek;
2355 if (name[1] == 'e' &&
2362 return -KEY_telldir;
2371 if (name[2] == 'f' &&
2377 return -KEY_ucfirst;
2383 if (name[2] == 's' &&
2389 return -KEY_unshift;
2399 if (name[1] == 'a' &&
2406 return -KEY_waitpid;
2415 case 8: /* 26 tokens of length 8 */
2419 if (name[1] == 'U' &&
2427 return KEY_AUTOLOAD;
2438 if (name[3] == 'A' &&
2444 return KEY___DATA__;
2450 if (name[3] == 'I' &&
2456 return -KEY___FILE__;
2462 if (name[3] == 'I' &&
2468 return -KEY___LINE__;
2484 if (name[2] == 'o' &&
2491 return -KEY_closedir;
2497 if (name[2] == 'n' &&
2504 return -KEY_continue;
2514 if (name[1] == 'b' &&
2522 return -KEY_dbmclose;
2528 if (name[1] == 'n' &&
2534 if (name[4] == 'r' &&
2539 return -KEY_endgrent;
2545 if (name[4] == 'w' &&
2550 return -KEY_endpwent;
2563 if (name[1] == 'o' &&
2571 return -KEY_formline;
2577 if (name[1] == 'e' &&
2588 if (name[6] == 'n' &&
2591 return -KEY_getgrent;
2597 if (name[6] == 'i' &&
2600 return -KEY_getgrgid;
2606 if (name[6] == 'a' &&
2609 return -KEY_getgrnam;
2622 if (name[4] == 'o' &&
2627 return -KEY_getlogin;
2638 if (name[6] == 'n' &&
2641 return -KEY_getpwent;
2647 if (name[6] == 'a' &&
2650 return -KEY_getpwnam;
2656 if (name[6] == 'i' &&
2659 return -KEY_getpwuid;
2679 if (name[1] == 'e' &&
2686 if (name[5] == 'i' &&
2693 return -KEY_readline;
2698 return -KEY_readlink;
2709 if (name[5] == 'i' &&
2713 return -KEY_readpipe;
2734 if (name[4] == 'r' &&
2739 return -KEY_setgrent;
2745 if (name[4] == 'w' &&
2750 return -KEY_setpwent;
2766 if (name[3] == 'w' &&
2772 return -KEY_shmwrite;
2778 if (name[3] == 't' &&
2784 return -KEY_shutdown;
2794 if (name[2] == 's' &&
2801 return -KEY_syswrite;
2811 if (name[1] == 'r' &&
2819 return -KEY_truncate;
2828 case 9: /* 10 tokens of length 9 */
2832 if (name[1] == 'N' &&
2841 return KEY_UNITCHECK;
2850 if (name[2] == 'd' &&
2858 return -KEY_endnetent;
2864 if (name[2] == 'a' &&
2872 return (all_keywords || FEATURE_EVALBYTES_IS_ENABLED ? -KEY_evalbytes : 0);
2882 if (name[1] == 'e' &&
2891 return -KEY_getnetent;
2897 if (name[1] == 'o' &&
2906 return -KEY_localtime;
2912 if (name[1] == 'r' &&
2921 return KEY_prototype;
2927 if (name[1] == 'u' &&
2936 return -KEY_quotemeta;
2942 if (name[1] == 'e' &&
2951 return -KEY_rewinddir;
2957 if (name[1] == 'e' &&
2966 return -KEY_setnetent;
2972 if (name[1] == 'a' &&
2981 return -KEY_wantarray;
2990 case 10: /* 9 tokens of length 10 */
2994 if (name[1] == 'n' &&
3000 if (name[4] == 'o' &&
3007 return -KEY_endhostent;
3013 if (name[4] == 'e' &&
3020 return -KEY_endservent;
3033 if (name[1] == 'e' &&
3039 if (name[4] == 'o' &&
3046 return -KEY_gethostent;
3055 if (name[5] == 'r' &&
3061 return -KEY_getservent;
3067 if (name[5] == 'c' &&
3073 return -KEY_getsockopt;
3098 if (name[4] == 'o' &&
3105 return -KEY_sethostent;
3114 if (name[5] == 'r' &&
3120 return -KEY_setservent;
3126 if (name[5] == 'c' &&
3132 return -KEY_setsockopt;
3149 if (name[2] == 'c' &&
3158 return -KEY_socketpair;
3171 case 11: /* 8 tokens of length 11 */
3175 if (name[1] == '_' &&
3186 return -KEY___PACKAGE__;
3192 if (name[1] == 'n' &&
3203 return -KEY_endprotoent;
3209 if (name[1] == 'e' &&
3218 if (name[5] == 'e' &&
3225 return -KEY_getpeername;
3234 if (name[6] == 'o' &&
3240 return -KEY_getpriority;
3246 if (name[6] == 't' &&
3252 return -KEY_getprotoent;
3266 if (name[4] == 'o' &&
3274 return -KEY_getsockname;
3287 if (name[1] == 'e' &&
3295 if (name[6] == 'o' &&
3301 return -KEY_setpriority;
3307 if (name[6] == 't' &&
3313 return -KEY_setprotoent;
3329 case 12: /* 2 tokens of length 12 */
3330 if (name[0] == 'g' &&
3342 if (name[9] == 'd' &&
3345 { /* getnetbyaddr */
3346 return -KEY_getnetbyaddr;
3352 if (name[9] == 'a' &&
3355 { /* getnetbyname */
3356 return -KEY_getnetbyname;
3368 case 13: /* 4 tokens of length 13 */
3369 if (name[0] == 'g' &&
3376 if (name[4] == 'o' &&
3385 if (name[10] == 'd' &&
3388 { /* gethostbyaddr */
3389 return -KEY_gethostbyaddr;
3395 if (name[10] == 'a' &&
3398 { /* gethostbyname */
3399 return -KEY_gethostbyname;
3412 if (name[4] == 'e' &&
3421 if (name[10] == 'a' &&
3424 { /* getservbyname */
3425 return -KEY_getservbyname;
3431 if (name[10] == 'o' &&
3434 { /* getservbyport */
3435 return -KEY_getservbyport;
3454 case 14: /* 1 tokens of length 14 */
3455 if (name[0] == 'g' &&
3469 { /* getprotobyname */
3470 return -KEY_getprotobyname;
3475 case 16: /* 1 tokens of length 16 */
3476 if (name[0] == 'g' &&
3492 { /* getprotobynumber */
3493 return -KEY_getprotobynumber;
3507 * b680fb3a27b173b65d9c4e534ad92897c925e336476879a6be1da18ac55cbe8b regen/keywords.pl