Skip to main content

No project description provided

Project description

lib_typ_parse

lib_typ_parse is the client library for manipulating and producing typon code.

Usage

import lib_typ_parse.typon_client as typon_client

serviceEndpoint = 'http://127.0.0.1:8081'
api_key = 'API_KEY'
target_module = 'drivers.cache_server_driver'
module_dir = '/home/user/software/cache'
out_dir = '/home/user/software/cache/bin'
exe_name = 'cache_server_driver'

# retrieve .cpp source from server; stores .cpp file in {out_dir}/{exe_name}.cpp
# AND compiles {out_dir}/{exe_name}.cpp to {out_dir}/{exe_name}.exe
typon_client.compileCpp(serviceEndpoint, target_module, module_dir, out_dir, exe_name)
# retrieve .exe source from server; stores .exe file in {out_dir}/{exe_name}.exe
typon_client.compileExe(serviceEndpoint, api_key, target_module, module_dir, out_dir, exe_name)

Installing

$ python3 -m pip install lib_typ_parse

Sample Code

# data_format:
# written to contiguous segment of disk
# parameterizable disk access
# [len(repr(entry_i))] [repr(entry_i)]

# uses O( max(buffer_size, max(len(repr(entry_i)))) ) memory
# requires final commit to be flushed to disk
class BufferedWriter():
    def __members__(self):
        file_name: str
        fp: fileptr
        buffer_size: int
        buffer: str

    def __init__( self, file_name: str, buffer_size: int, append_mode: bool ):
        self.file_name = file_name
        self.buffer_size = buffer_size

        fMode = 'wb'
        if append_mode:
            fMode = 'ab'
        self.fp = open(file_name, fMode)

    def __del__(self):
        self.commit()
        self.fp.close()

    def writeItem(self, entry: str) -> char:
        # sizeRepr = beval(len(entry), 'int', false)
        sizeRepr = brepr(len(entry))
        self.buffer += sizeRepr + entry
        if len(self.buffer) >= self.buffer_size:
            return self.commit()
        return char(0)

    def commit(self) -> char:
        if len(self.buffer) > 0:
            self.fp.write(self.buffer)
            self.buffer = ""
            return char(1)
        return char(0)

AutoGeneratedDocs

lib_typ_parse.helper.__init__



lib_typ_parse.helper.type_resolver

    def reduce_rel_type( target_module, current_module, rel_type, reverse_imports_map )
    
    def compute_relative_type(abs_type, current_module, reverse_imports_map)
    
    def resolve_map_type_L0_skeleton(typon_map_type, L0_skeleton)
    
    def read_tuple_types_typon_L0_skeleton(ws_removed_typon_tuple_type, L0_skeleton)
    
    def read_args_ret_from_fxn_typon_type(ws_removed_typon_fxn_type)

lib_typ_parse.helper.eval_service

    def resolve_func_type_from_arguments(arguments)
    
    def resolve_args_only_func_type(arguments)
    
    def resolve_func_type_from_arguments_msa(arguments, module_L0_skeleton, current_module)
    
    def resolve_args_only_func_type_msa(arguments, module_L0_skeleton, current_module)
    
    def is_valid_var_name(var_name)

lib_typ_parse.helper.eval_helper

    def extract_id_var_tuple(S2)
    
    def read_fxn_params(arg_str)
    
    def fmt_type_module_space_aware_module_L0_skeleton(input_typon_type, current_module, module_L0_skeleton)

lib_typ_parse.__init__



lib_typ_parse.__api__



lib_typ_parse.parse.__init__



lib_typ_parse.parse.parser

    def parse_fxn(code, index, scope)
    
    def parse_class(code, index, scope)
    
    def parse_try(code, index, scope)
    
    def parse_except(code, index, scope)
    
    def parse_L1_CE(code, index, scope, token)
    
    def parse_L0_statement(code, index, scope)
    
    def parse_import(code, index, scope)
    
    def parse_include(code, index, scope)
    
    def parse_abstract_statement(code, index, scope, start_token)
    
    def read_scope(code, index, scope)

lib_typ_parse.parse.parse_L0_skeleton

    def assert_code_topology(current_module, item_skeleton)
    
    def assert_single_main(item_skeletons)
    
    def select_modules_to_read(item_skeleton)
    
    def read_import_to_skeleton(item, module_L0_skeleton, current_module)
    
    def read_include_to_skeleton(item, module_L0_skeleton, current_module)
    
    def read_fxn_to_skeleton(item, module_L0_skeleton, current_module)
    
    def parseClassFxnArgsRepr(argRepr)
    
    def check_self_ref_mem_fxn(statement, error_msg)
    
    def read_class_members_to_skeleton(class_name, statement, module_L0_skeleton, current_module)
    
    def read_constructor_to_skeleton(class_name, statement, module_L0_skeleton, current_module)
    
    def read_destructor_to_skeleton(class_name, statement, module_L0_skeleton, current_module)
    
    def read_class_fxn_to_skeleton(class_name, statement, module_L0_skeleton, current_module)
    
    def read_class_to_skeleton(item, module_L0_skeleton, current_module)
    
    def read_instruction_to_skeleton(item, module_L0_skeleton, current_module)
    
    def read_ordered_L0_statements(item_skeleton)
    
    def format_L0_skeleton(item_skeleton, current_module, code)
    
    def read_L0_skeleton(current_module, item_skeleton, code)
    
    def fmt_code(src_dir)
    
    def select_code_skeletons(target_module, module_dir)

lib_typ_parse.parse.parse_skeleton

    def select_reverse_imports_map(skeleton)
    
    def map_rel_type( abs_type, module_name, reverse_imports_map )
    
    def condense_fxn(fxn_def, module_name, reverse_imports_map)
    
    def condense_class(class_def, module_name, reverse_imports_map)
    
    def read_absolute_skeleton(target_module, module_dir)
    
    def read_relative_skeleton(target_module, module_dir)
    
    def p1()
    
    def main()

lib_typ_parse.typon_client

    def compileCpp(serviceEndpoint, api_key, target_module, module_dir, out_dir, exe_name, printProg=True)
    
    def compileExe(serviceEndpoint, api_key, target_module, module_dir, out_dir, exe_name, printProg=True)

lib_typ_parse.utils.__init__



lib_typ_parse.utils.constants

    def select_item_prefix(item_name)
    
    def select_primitives()
    
    def select_bracket_map()

lib_typ_parse.utils.exceptions

    def find_all(s, t, index)
    
    def raise_exception_msg(code, index, error_msg)
    
    def raise_exception_msgs(code, index, error_msgs)
    
    def raise_exception_raw(error_msgs)
    
    def raise_exception_ue(error_msgs)
    
    def raise_exception_ue_cm(error_msgs, current_module)
    
    def raise_exception_ST(symbol_table, errors)
    
    def format_parse_tree(abstract_tree)
    
    def raise_inv_exception_decl(exception_decl, symbol_table)
    
    def raise_invalid_raise_exception(symbol_table)
    
    def raise_class_not_found_exception(symbol_table, class_name, target_module)
    
    def raise_inv_assertion_declaration(symbol_table, interior_assert_typon_type)
    
    def raise_exception_L0_skeleton(errors, current_module, L0_skeleton)
    
    def raise_parsing_exception(error_msg_str, current_module, src_dir)

lib_typ_parse.utils.fmt_utils

    def format_indent(indent_str, multiline_str)
    
    def serialize_json(py_dict)
    
    def print_json(py_dict)
    
    def select_module_src_dir(module_dir, target_module)
    
    def read_module_src(module_dir, target_module)

lib_typ_parse.utils.parsing_utils

    def indent_multiline_str(indent_str, multiline_str)
    
    def get_fmt_str_expr_closure(target_substr, open_index, symbol_table)
    
    def get_char_closure(s, index)
    
    def get_unescaped_quote(s, index, quote)
    
    def close_triple_quote(s, index, trq)
    
    def get_quote_closure(s, index)
    
    def is_escaped_quote(s, index)
    
    def get_cleared_char_closure(s, index)
    
    def read_next_cleared_char(s, index, target_char)
    
    def parse_current_scope(source_code, scope_start_index)
    
    def read_init_token(source_code, index, scope)
    
    def select_token_index(tok_stream, target_token)
    
    def get_token_stream_closure(tok_stream, i_start)
    
    def get_expr_aware_closure(tok_stream, index, symbol_table)
    
    def find_all_expr_aware(tok_stream, index, symbol_table, target_token)
    
    def split_expr_aware(tok_stream, symbol_table, target_token)
    
    def split_arg_typle(s, index)
    
    def read_delimited_types(type_str)
    
    def parse_fxn_type(function_type, symbol_table)

lib_typ_parse.utils.transform_data

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lib_typ_parse-0.0.4.tar.gz (17.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lib_typ_parse-0.0.4-py3-none-any.whl (19.9 kB view details)

Uploaded Python 3

File details

Details for the file lib_typ_parse-0.0.4.tar.gz.

File metadata

  • Download URL: lib_typ_parse-0.0.4.tar.gz
  • Upload date:
  • Size: 17.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.10

File hashes

Hashes for lib_typ_parse-0.0.4.tar.gz
Algorithm Hash digest
SHA256 4c65deac1bf6d13ff1964d438a27185c1390552690ee1bd5ad8b58e340ac60ae
MD5 47ffdaaae0d4d4e4c2eb4448088118cb
BLAKE2b-256 502beabaa462fb4b222f2ea0129724d417c99c7728390b66fbae865ecd3b3df7

See more details on using hashes here.

File details

Details for the file lib_typ_parse-0.0.4-py3-none-any.whl.

File metadata

  • Download URL: lib_typ_parse-0.0.4-py3-none-any.whl
  • Upload date:
  • Size: 19.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.10

File hashes

Hashes for lib_typ_parse-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 02ced2ab985a9705e602bdaf4f873445f982613c6fae990e0c93f439a68c5efe
MD5 0e40d59f4e853957ef4701592ab14383
BLAKE2b-256 e0810937020666af5938fe8c31a6074e67d7b4cf2b978b5db56dcb6b05dc1fd3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page