"""
Auto-generated Python stub file from lib.core.StubMerger.py
Module: lib.core.StubMerger
"""


import t, c
from stdint import *
import memhub
import string
import stdio
import stdlib
import llvmlite
import w32.win32file as win32file
import w32.win32base as win32base
import w32.fileio as fileio
import viperlib
import sys
import ast
import lib.core.IncludesScanner as IncludesScanner
import lib.core.Handles.HandlesStruct as HandlesStruct
import lib.core.Handles.HandlesImports as HandlesImports
import lib.core.Handles.HandlesTranslator as HandlesTranslator

_mbuddy: t.CExtern | memhub.MemManager | t.CPtr
MAX_INCLUDES_SHA1: t.CDefine = 256
STUB_READ_BUF_SIZE: t.CDefine = 262144
MAX_INCLUDES: t.CDefine = 256

def _load_includes_sha1_set(pool: memhub.MemBuddy | t.CPtr, temp_dir: str, sha1_set: str) -> int: pass

def _is_in_sha1_set(sha1: str, sha1_set: str, set_count: int) -> int: pass

def WriteIncludesSha1Map(mb: memhub.MemBuddy | t.CPtr, temp_dir: str, scan_result: IncludesScanner.ScanResult | t.CPtr, filter_set: t.CChar | t.CPtr, filter_count: int) -> int: pass

def _IsFuncDeclaredOrDefined(out_buf: bytes, func_sig: str) -> int: pass

def _CommentOutDeclareInBuf(out_buf: bytes, func_sig: str) -> int: pass

def _CommentOutGlobalInBuf(out_buf: bytes, global_name: str) -> int: pass

def _CommentOutOpaqueTypeInBuf(out_buf: bytes, type_name_prefix: str) -> int: pass

def _HasFullTypeDefinition(out_buf: bytes, type_name_prefix: str) -> int: pass

def _LoadAndAppendStub(temp_dir: str, td_len: t.CSizeT, dep_sha1: str, dep_buf: bytes, out_buf: bytes, out_size: t.CSizeT, out_pos: t.CSizeT) -> t.CSizeT: pass

def _LoadAndAppendTextDeclares(temp_dir: str, td_len: t.CSizeT, dep_sha1: str, dep_buf: bytes, out_buf: bytes, out_size: t.CSizeT, out_pos: t.CSizeT) -> t.CSizeT: pass

def _PathToModuleName(path: str) -> str: pass

def _BuildIncludesSha1Map(temp_dir: str, td_len: t.CSizeT, sha1_list: t.CChar | t.CPtr, mod_list: t.CChar | t.CPtr) -> int: pass

def _FindSha1ByModName(sha1_arr: t.CChar | t.CPtr, mod_arr: t.CChar | t.CPtr, count: int, mod_name: str) -> str: pass

def _AddSha1ToSet(set_buf: t.CChar | t.CPtr, count: int, sha1: str) -> int: pass

def _BuildReachableSha1Set(mb: memhub.MemBuddy | t.CPtr, source_dir: str, temp_dir: str, reachable_set: t.CChar | t.CPtr) -> int: pass

def BuildCombinedIR(temp_dir: str, local_sha1: str, out_buf: bytes, out_size: t.CSizeT) -> t.CSizeT: pass
