Current Path: > > opt > cloudlinux > venv > lib64 > python3.11 > > site-packages > pycparser
Operation : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 Software : Apache Server IP : 162.0.232.56 | Your IP: 216.73.216.111 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
__pycache__ | Directory | - | - | |
ply | Directory | - | - | |
__init__.py | File | 2815 bytes | April 17 2025 13:10:58. | |
_ast_gen.py | File | 10555 bytes | April 17 2025 13:10:58. | |
_build_tables.py | File | 1039 bytes | April 17 2025 13:10:58. | |
_c_ast.cfg | File | 4255 bytes | April 17 2025 13:10:58. | |
ast_transforms.py | File | 5691 bytes | April 17 2025 13:10:58. | |
c_ast.py | File | 31445 bytes | April 17 2025 13:10:58. | |
c_generator.py | File | 17772 bytes | April 17 2025 13:10:58. | |
c_lexer.py | File | 17167 bytes | April 17 2025 13:10:58. | |
c_parser.py | File | 73680 bytes | April 17 2025 13:10:58. | |
lextab.py | File | 8504 bytes | April 17 2025 13:10:58. | |
plyparser.py | File | 4875 bytes | April 17 2025 13:10:58. | |
yacctab.py | File | 205652 bytes | April 17 2025 13:10:58. |
#----------------------------------------------------------------- # pycparser: __init__.py # # This package file exports some convenience functions for # interacting with pycparser # # Eli Bendersky [https://eli.thegreenplace.net/] # License: BSD #----------------------------------------------------------------- __all__ = ['c_lexer', 'c_parser', 'c_ast'] __version__ = '2.21' import io from subprocess import check_output from .c_parser import CParser def preprocess_file(filename, cpp_path='cpp', cpp_args=''): """ Preprocess a file using cpp. filename: Name of the file you want to preprocess. cpp_path: cpp_args: Refer to the documentation of parse_file for the meaning of these arguments. When successful, returns the preprocessed file's contents. Errors from cpp will be printed out. """ path_list = [cpp_path] if isinstance(cpp_args, list): path_list += cpp_args elif cpp_args != '': path_list += [cpp_args] path_list += [filename] try: # Note the use of universal_newlines to treat all newlines # as \n for Python's purpose text = check_output(path_list, universal_newlines=True) except OSError as e: raise RuntimeError("Unable to invoke 'cpp'. " + 'Make sure its path was passed correctly\n' + ('Original error: %s' % e)) return text def parse_file(filename, use_cpp=False, cpp_path='cpp', cpp_args='', parser=None): """ Parse a C file using pycparser. filename: Name of the file you want to parse. use_cpp: Set to True if you want to execute the C pre-processor on the file prior to parsing it. cpp_path: If use_cpp is True, this is the path to 'cpp' on your system. If no path is provided, it attempts to just execute 'cpp', so it must be in your PATH. cpp_args: If use_cpp is True, set this to the command line arguments strings to cpp. Be careful with quotes - it's best to pass a raw string (r'') here. For example: r'-I../utils/fake_libc_include' If several arguments are required, pass a list of strings. parser: Optional parser object to be used instead of the default CParser When successful, an AST is returned. ParseError can be thrown if the file doesn't parse successfully. Errors from cpp will be printed out. """ if use_cpp: text = preprocess_file(filename, cpp_path, cpp_args) else: with io.open(filename) as f: text = f.read() if parser is None: parser = CParser() return parser.parse(text, filename)
SILENT KILLER Tool