python311-ply-3.11-150400.12.6.1<>,P@f/cp9|Z7RޚJNl>,`7ujǩpmBmWr ̍k&NeYdsa{50`[G2U*\En vz`,J }UܥjKx~x X{lw5ϡkڗJZ8!W>@F!y^]$!3qth9Cq<@t#AG6?쀦 2 t)8Dk{L'|W|4.t2 Uַ>>E?Ed # 5$(Abo Z4Z Z Z Z Z 8ZZbZ$LZ g( 8 9 :! F1G1ZH30ZI4ZX4Y4\5 Z]6tZ^:b>c?d@e@f@l@u@,ZvAwB\ZxCZyE,zEtEEEECpython311-ply3.11150400.12.6.1Python Lex & YaccPLY is yet another implementation of lex and yacc for Python. Some notable features include the fact that its implemented entirely in Python and it uses LALR(1) parsing which is efficient and well suited for larger grammars. PLY provides most of the standard lex/yacc features including support for empty productions, precedence rules, error recovery, and support for ambiguous grammars. PLY provides extensive error checking. It is compatible with both Python 2 and Python 3.f/ch04-ch2b -SUSE Linux Enterprise 15SUSE LLC BSD-3-Clausehttps://www.suse.com/Development/Languages/Pythonhttp://www.dabeaz.com/ply/linuxnoarchR.g v v g Sܱ#q [EY"Ig9 <wN8K;X YO , bB N ]F#AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤A큤f/bf/bf/bf/bf/bf/bZf/bf/bf/bf/bf/bf/bf/bf/bf/bf/bf/bf/bf/bZZZZZf/cZZZZZ ZZZZ f/bZf/bf/bf/bf/bf/bZZZZZZZZZZZZZf/bf/bZZf/bZf/bf/bf/bf/bf/bf/bf/bf/bf/bf/bZf/bf/bf/bf/bf/bf/bf/bZf/bf/bf/bf/bZf/bf/bf/bf/cZ0995a6ca70f859ccd1c41c9da52945eb3fa21921f33e50e20821f58f670a933ba1b69ca6c18e377d19fc06ae151933c40d8d61629e4df439b2c29fed9ea2fc8301ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b8036011d143b572d2d6340235f226d69dbd4d8b0da3ac1ea86157bd001ac8ac7b31ea204817ffd6288794d22c36592a12a8185c947179121053734c038a04d5f81cbd1ad356b58c6918cee28a8a0575b3136d590931970b7a448e96afbd47a3381cbd1ad356b58c6918cee28a8a0575b3136d590931970b7a448e96afbd47a3338063b85da88669fe6e8f2fe9ced49ecd9b11d9f7030d890e574a9bcb8e4792738063b85da88669fe6e8f2fe9ced49ecd9b11d9f7030d890e574a9bcb8e4792723372eb03f928c0868da2527f29a7d9497ad80c387c8cacb2457c7ad9e9778f523372eb03f928c0868da2527f29a7d9497ad80c387c8cacb2457c7ad9e9778f5d6ca9df07aefa1eb1b0092c256ad5b2af30d5b265876458448bb497910dda259d6ca9df07aefa1eb1b0092c256ad5b2af30d5b265876458448bb497910dda25906cdce7a34acf18f95b5af84cab0e30c471a3acdc3cec623915fd3e5ac79df4906cdce7a34acf18f95b5af84cab0e30c471a3acdc3cec623915fd3e5ac79df4970d3fdeb157b8024d8d7e9c8644643789c153264181b565e2cfadd8b5aa22a2f70d3fdeb157b8024d8d7e9c8644643789c153264181b565e2cfadd8b5aa22a2f293835dd1e5229e89cc199bb6c83cbe3829c40145c1ec99e1063b020156f2e4a1a6c9660363d9e5e85d56250f6b99c405821d459c00c5967a7f4c18d3704b2a56da6d12129c801fcc7a3b5aa2d8176a86092687d1bb4cf1ddf3b601da2b7480d105d38deb207ad72581ba8dc6f5e5323648bc1d0a834e4195c237fd4cdfe23894d19e4660c79041078dd0b29bb6278815b69781badf31ad3119a0b6cd3746fa3592d6772958ea4ce519e9caf536181a782354e796970b5992f448fe66163125bc3805a899db61dd91f7067e6365a9292900e8f4fe216a29510b90d83e986b4451095b93b81d2043c5c55e0859875b416f75edb6d5eccb4bf2ace1b5445d1c84fbe64d67067f9c4f8bbbcb382380b792b28ace24e15d768e96361ebbbdc2a4f92f338d8b58c8972ce5c9c13b23d8748a543b4e90ddbc297333f68fddb26511cde0dd3cd68714f1c452084631a1fa5071a4630c67395a7fa4bec5e13b55918bcb4ccaa16661f3433d55d506a6a5f5e206c1fbf452805c4081c569ee8743e3098686dc228df965cc0291d4dafb2603b7ed88c7067d54da4a652710f8f8cf5ffaae7c3fe666f35a495926c628da5eb519c0abe74373aae2db6164c829a5c3cb72ad93627c91899e1c71e276811de502c50def23ca135c86442f83f682e5c3f961f1baf274ad0d67d107feed6cceacdd87a53365a8e0a4a98dab1e6d5df2bb05d381a5bd8bfaafd9773d090d8a3546f8ecdba935352f1356550dd7892a63938de54bb6f8fcb7afaa59f83946650233745ecfed39df9e634fdd96034ac7564936e7aebfed85629d170b444d85acdf64ee9610fae15ff40e97b21202e4815168d4c3c9c26488b664204c283b05258dffe0b45d7e8d09772ad13a435b482053b7c944e93367e57a8f5d5beb0e1d9d791c843c61ead75a172ee0930a6f2b85e955f9a8f646c0ce3941d1b4bd36e3e59e72b176c01171a96c3c6490f5a456b1c2e0a79984765175a072a23e6143b9e84ea1e845d7a68cc7ef6df931e2b1cb6a475b6ee56d7169f4a980cd42c5250e7b0128f30b5a9dd4ba804fc7b5a28dd867f3e0c7da6294ee20571c4baf96f629e57e34572165e414be8d63d973ba4c5a523e8c3d1ac29cb52471ec9d32ce2253672c4547000137c1b29615c543c1aec4ab2a5aa867bc08988cabd5211563fcb706d30732d647d212608a3188703b3c61ddc46163faf777a094d036ba6eb993de6468affc21b8903b0eda7f50ca96e8bf5dc8bcd335bce8993aa9c10386a3eab5a239917715bfd99794dd402c5ec059439857e3464d91bc0d049faf07012c9af045d6a9a2eebbe38fa331eba9c3cae22513a3893ea34c2f11babebed863ae73624569f16e092cbf1df4390f1b8c52ed5097970245f4c583f8c08f444e12793596cd017b13bfbdd1b57b0a9232885b7ee8f9d51da46b2d1d66adf8f67ec42b39741391794b4ea66c33c05e7b0b9981c4a92ad5fc40ebeecc466775b45a54e54c4ae854fe30a2719c4c561434fc985468a7738d3bd3fd991b39664e21b27217304e61611e83e7d91e357bcf1074d9e44d33310845d840017800dbce6755949dc31128913ca7efb8fa42a814a5e14eedea601f57f5ae235301ed45dcc2fda585bac12e20689db728cc19a3c8568878ce9af16d6352b2de763046ef82b4df1aad73130ad189c229cbbb3d5f882bfe52d6df158c024b47417433143c7229cf572281a7f5324516805812735a7f75c14f90f398fe88633f910bd94af671139ffc02b9d33c60dd33096f889f152c079148fca15bf3270f3fe93290b1e67685481730fe562b799cf4f362eb6a39a14f323ba26d3437be33d5f3d6116902573924499fa544aede50f234c45a656e98e4f70f879cfedddcc74acc7837defe9b9de7c5731339fca86a1a28808d2a090b557c7298f36e56e0591a3baee23653f8e37f6d83be45d90459768138d8e27dbe53fc2677f7cb766d1b72204ca5007285f921baddc8e40a3f1e353a8d59ddf7b5d4d3d5968ee9662625cc7386242454d98f894598eaa6c8703ba054e2708f5b4c2e17019266e7694cce102cb0a94bed5078ae9cf2deeaf90d242879e24cbc6c8749b20e04fff29d5f9dfab44dc96f6fb7aeeefbe3684bf2da3749a92776eb2bb2e3d3fda54168a06e9a1cd69c597a426047c630135ed4344a565ab85a74f468cf22f9a47bf138c5c286f852e9de02b571b25da7c2d0906d1ce2d151e7b3835cda3e5be81fdfc133b3a721b747d01b4b6915727baec6e9b483c731374d03f04b58dc8a5455533729fa43db67f1224d57f59f0fcf8ed790fb42a0b3420b46d5dd07b81ea1c00f122ea1af79360071095b93b81d2043c5c55e0859875b416f75edb6d5eccb4bf2ace1b5445d1c84frootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootpython-ply-3.11-150400.12.6.1.src.rpmpython311-ply@     python(abi)rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PartialHardlinkSets)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.113.0.4-14.6.0-14.0.4-14.0-15.2-14.14.3dEdBzd7[\[[Ycl@X~@WiV @UPmcepl@suse.comdmueller@suse.commcepl@suse.comjengelh@inai.detchvatal@suse.comtoddrme2178@gmail.comtoddrme2178@gmail.comrjschwei@suse.comtbechtold@suse.comhpj@urpla.netbenoit.monin@gmx.fr- Move documentation into main package for SLE15- add sle15_python_module_pythons (jsc#PED-68)- Make calling of %{sle15modernpython} optional.- Trim bias from description. Use 'find +'.- Install some license - Remove devel dependency- Update to 3.11 * Fixed some minor bugs related to re flags and token order. * Added a set_lexpos() method to grammar symbols. Github issue #148. * Mostly minor bug fixes and small code cleanups.- Fix wrong-script-interpreter rpmlint error.- Switch to single-spec build - Update to 3.10 * Changed grammar signature computation to not involve hashing functions. Parts are just combined into a big string.- update to 3.9: * Exposed the parser state number as the parser.state attribute in productions and error functions. * Fixed Issue #88. Python3 compatibility with ply/cpp. * Fixed Issue #93. Ply can crash if SyntaxError is raised inside a production. Not actually sure if the original implementation worked as documented at all. Yacc has been modified to follow the spec as outlined in the CHANGES noted for 11/27/07 below. * Fixed Issue #97. Failure with code validation when the original source files aren't present. Validation step now ignores the missing file. * Minor fixes to version numbers.- update to version 3.8: * Fixed issues related to Python 3.5. Patch contributed by Barry Warsaw. - update to version 3.7 * Fixed problems when reading table files from pickled data. * Fixed regression in handling of table modules if specified as module objects. See https://github.com/dabeaz/ply/issues/63 - clean up spec - add testing rig- update to version 3.6: * If PLY is unable to create the 'parser.out' or 'parsetab.py' files due to permission issues, it now just issues a warning message and continues to operate * Fixed some issues related to use of packages and table file modules - additional changes from version 3.5: * Added support for defaulted_states in the parser * Fixed debug logging in the parser * Added actions to be defined to character literals (Issue #32) * Import of the 'parsetab.py' file is now constrained to only consider the directory specified by the outputdir argument to yacc() * Changed default output directory to be the same as that in which the yacc grammar is defined * Changed the parsetab.py file signature slightly so that the parsetab won't regenerate if created on a different major version of Python * Fixed Issue #44 call_errorfunc() should return the result of errorfunc() * Support for versions of Python <2.7 is officially dropped * Fixed bug related to calling yacc(start=...) * Added skipped tests for PyPy and Java * Added filter to make unit tests pass under 'python -3' * Fixed CPP_INTEGER regex in ply/cpp.py (Issue 21) * Fixed yacc validation bugs when from __future__ import unicode_literals is being used * Added support for Travis-CI * Added a .gitignore file * Fixed validation problems for source files that include a different source code encoding specifier * Fixed unit tests for yacc to eliminate random failures due to dict hash value randomization in Python 3.3 * Fixed comment whitespace processing bugs in ply/cpp.py * Fixed token names in ply/ctokens.py to match rule names * Changes to functions available in panic mode error recover * Fixed some problems with line and position tracking and the use of error symbols * Change to doc string handling in lex module * Fixed issue #1: Fixed _tabversion. It should use __tabversion__ instead of __version__ * Fixed issue #8: Literals empty list causes IndexError * Fixed issue #12: Typo in code snippet in documentation * Fixed issue #10: Correctly escape t_XOREQUAL pattern. - clean the test and example directories - remove stray backup files in doc - remove unneeded executable bit of testlex.py - remove CFLAGS export: unneeded - do not drop executable bit of everything in test since it contains subdirectories - remove useless clean section - remove README from package: not provided anymoreh04-ch2b 1714414435  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ3.11-150400.12.6.1     plyply-3.11-py3.11.egg-infoPKG-INFOSOURCES.txtdependency_links.txttop_level.txt__init__.py__pycache____init__.cpython-311.opt-1.pyc__init__.cpython-311.pyccpp.cpython-311.opt-1.pyccpp.cpython-311.pycctokens.cpython-311.opt-1.pycctokens.cpython-311.pyclex.cpython-311.opt-1.pyclex.cpython-311.pycyacc.cpython-311.opt-1.pycyacc.cpython-311.pycygen.cpython-311.opt-1.pycygen.cpython-311.pyccpp.pyctokens.pylex.pyyacc.pyygen.pypython311-plyANNOUNCECHANGESREADME.mdTODOdocinternal.htmlmakedoc.pyply.htmlexampleBASICREADMEbasic.pybasiclex.pybasiclog.pybasinterp.pybasparse.pydim.basfunc.basgcd.basgosub.bashello.baslinear.basmaxsin.baspowers.basrand.bassales.bassears.bassqrt1.bassqrt2.basGardenSnakeGardenSnake.pyREADMEREADMEansicREADMEclex.pycparse.pycalccalc.pycalcdebugcalc.pycalceofcalc.pyclasscalccalc.pycleanup.shclosurecalccalc.pyhedithedit.pynewclasscalccalc.pyoptcalcREADMEcalc.pyunicalccalc.pyyplyREADMEylex.pyyparse.pyyply.pypython311-plyREADME.md/usr/lib/python3.11/site-packages//usr/lib/python3.11/site-packages/ply-3.11-py3.11.egg-info//usr/lib/python3.11/site-packages/ply//usr/lib/python3.11/site-packages/ply/__pycache__//usr/share/doc/packages//usr/share/doc/packages/python311-ply//usr/share/doc/packages/python311-ply/doc//usr/share/doc/packages/python311-ply/example//usr/share/doc/packages/python311-ply/example/BASIC//usr/share/doc/packages/python311-ply/example/GardenSnake//usr/share/doc/packages/python311-ply/example/ansic//usr/share/doc/packages/python311-ply/example/calc//usr/share/doc/packages/python311-ply/example/calcdebug//usr/share/doc/packages/python311-ply/example/calceof//usr/share/doc/packages/python311-ply/example/classcalc//usr/share/doc/packages/python311-ply/example/closurecalc//usr/share/doc/packages/python311-ply/example/hedit//usr/share/doc/packages/python311-ply/example/newclasscalc//usr/share/doc/packages/python311-ply/example/optcalc//usr/share/doc/packages/python311-ply/example/unicalc//usr/share/doc/packages/python311-ply/example/yply//usr/share/licenses//usr/share/licenses/python311-ply/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:33600/SUSE_SLE-15-SP4_Update/1557d9c39f7c368c566fa59281da570e-python-ply.SUSE_SLE-15-SP4_Updatedrpmxz5noarch-suse-linuxdirectoryASCII textPython script, ASCII text executablePython script, ISO-8859 text executableHTML document, ASCII textObjective-C source, ASCII textPOSIX shell script, ASCII text executable RRRRRRRRRRRRRRRRRRbkꍪn ʀiutf-805e5cfc503e565649bb46229a58689dd7c911489864bb351c18bc26e31e5cc37? 7zXZ !t/]"k%pa L:OFjWKV!Ka2}oB<xk{4?ƊlUY6"e;2!%:. ކn6 A#&A_ NbZ͢PT %ݍVT1ڍA"L؞&x“NX |+C|===qtB$荓BQeV*Jf@* _e=áj2͛,=ߞ*w4?\ ]~ (W)3e ®J:4=5Z g8RnQmЏݪ;6QV $0x/qKգC: FYF+0ޯƽ7Yl3Y%ΔDZ{ڧ%U mL6]t! L/OvjԔϥ]|zRWoCc۳M{+{ߖxTɓV2HyIXJ2^6 qj"0|5w+?\2@NHTGA`ݜWS |tk ~h x4O``5oQBZ}z\UӘ1: HgQ}t `XFtItAѕ:>tDe߷`:&͐$O]< )4Z0>%HnH{&+G9n9lݼd6Ko (J}PyHgٴ iCT] G_iXAa.18֟F L,܂3\2[00{ܽvY3H. 0+L"SYP278r:Ӷ/Ւ?5_% \ەK%(K }( /@9dGGy[9_=mG:r#@ޑo /֞ YZ