Psyduck - 可達鴨 之 鴨力山大2


Server : LiteSpeed
System : Linux premium217.web-hosting.com 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13 UTC 2025 x86_64
User : alloknri ( 880)
PHP Version : 8.1.34
Disable Function : NONE
Directory :  /opt/alt/python313/include/python3.13/internal/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //opt/alt/python313/include/python3.13/internal/pycore_bytesobject.h
#ifndef Py_INTERNAL_BYTESOBJECT_H
#define Py_INTERNAL_BYTESOBJECT_H
#ifdef __cplusplus
extern "C" {
#endif

#ifndef Py_BUILD_CORE
#  error "this header requires Py_BUILD_CORE define"
#endif

extern PyObject* _PyBytes_FormatEx(
    const char *format,
    Py_ssize_t format_len,
    PyObject *args,
    int use_bytearray);

extern PyObject* _PyBytes_FromHex(
    PyObject *string,
    int use_bytearray);

// Helper for PyBytes_DecodeEscape that detects invalid escape chars.
// Export for test_peg_generator.
PyAPI_FUNC(PyObject*) _PyBytes_DecodeEscape2(const char *, Py_ssize_t,
                                             const char *,
                                             int *, const char **);
// Export for binary compatibility.
PyAPI_FUNC(PyObject*) _PyBytes_DecodeEscape(const char *, Py_ssize_t,
                                            const char *, const char **);


// Substring Search.
//
// Returns the index of the first occurrence of
// a substring ("needle") in a larger text ("haystack").
// If the needle is not found, return -1.
// If the needle is found, add offset to the index.
//
// Export for 'mmap' shared extension.
PyAPI_FUNC(Py_ssize_t)
_PyBytes_Find(const char *haystack, Py_ssize_t len_haystack,
              const char *needle, Py_ssize_t len_needle,
              Py_ssize_t offset);

// Same as above, but search right-to-left.
// Export for 'mmap' shared extension.
PyAPI_FUNC(Py_ssize_t)
_PyBytes_ReverseFind(const char *haystack, Py_ssize_t len_haystack,
                     const char *needle, Py_ssize_t len_needle,
                     Py_ssize_t offset);


// Helper function to implement the repeat and inplace repeat methods on a
// buffer.
//
// len_dest is assumed to be an integer multiple of len_src.
// If src equals dest, then assume the operation is inplace.
//
// This method repeately doubles the number of bytes copied to reduce
// the number of invocations of memcpy.
//
// Export for 'array' shared extension.
PyAPI_FUNC(void)
_PyBytes_Repeat(char* dest, Py_ssize_t len_dest,
    const char* src, Py_ssize_t len_src);

/* --- _PyBytesWriter ----------------------------------------------------- */

/* The _PyBytesWriter structure is big: it contains an embedded "stack buffer".
   A _PyBytesWriter variable must be declared at the end of variables in a
   function to optimize the memory allocation on the stack. */
typedef struct {
    /* bytes, bytearray or NULL (when the small buffer is used) */
    PyObject *buffer;

    /* Number of allocated size. */
    Py_ssize_t allocated;

    /* Minimum number of allocated bytes,
       incremented by _PyBytesWriter_Prepare() */
    Py_ssize_t min_size;

    /* If non-zero, use a bytearray instead of a bytes object for buffer. */
    int use_bytearray;

    /* If non-zero, overallocate the buffer (default: 0).
       This flag must be zero if use_bytearray is non-zero. */
    int overallocate;

    /* Stack buffer */
    int use_small_buffer;
    char small_buffer[512];
} _PyBytesWriter;

/* Initialize a bytes writer

   By default, the overallocation is disabled. Set the overallocate attribute
   to control the allocation of the buffer.

   Export _PyBytesWriter API for '_pickle' shared extension. */
PyAPI_FUNC(void) _PyBytesWriter_Init(_PyBytesWriter *writer);

/* Get the buffer content and reset the writer.
   Return a bytes object, or a bytearray object if use_bytearray is non-zero.
   Raise an exception and return NULL on error. */
PyAPI_FUNC(PyObject *) _PyBytesWriter_Finish(_PyBytesWriter *writer,
    void *str);

/* Deallocate memory of a writer (clear its internal buffer). */
PyAPI_FUNC(void) _PyBytesWriter_Dealloc(_PyBytesWriter *writer);

/* Allocate the buffer to write size bytes.
   Return the pointer to the beginning of buffer data.
   Raise an exception and return NULL on error. */
PyAPI_FUNC(void*) _PyBytesWriter_Alloc(_PyBytesWriter *writer,
    Py_ssize_t size);

/* Ensure that the buffer is large enough to write *size* bytes.
   Add size to the writer minimum size (min_size attribute).

   str is the current pointer inside the buffer.
   Return the updated current pointer inside the buffer.
   Raise an exception and return NULL on error. */
PyAPI_FUNC(void*) _PyBytesWriter_Prepare(_PyBytesWriter *writer,
    void *str,
    Py_ssize_t size);

/* Resize the buffer to make it larger.
   The new buffer may be larger than size bytes because of overallocation.
   Return the updated current pointer inside the buffer.
   Raise an exception and return NULL on error.

   Note: size must be greater than the number of allocated bytes in the writer.

   This function doesn't use the writer minimum size (min_size attribute).

   See also _PyBytesWriter_Prepare().
   */
PyAPI_FUNC(void*) _PyBytesWriter_Resize(_PyBytesWriter *writer,
    void *str,
    Py_ssize_t size);

/* Write bytes.
   Raise an exception and return NULL on error. */
PyAPI_FUNC(void*) _PyBytesWriter_WriteBytes(_PyBytesWriter *writer,
    void *str,
    const void *bytes,
    Py_ssize_t size);

#ifdef __cplusplus
}
#endif
#endif /* !Py_INTERNAL_BYTESOBJECT_H */
Name
Size
Permissions
Options
mimalloc
--
drwxr-xr-x
pycore_abstract.h
1.87 KB
-rw-r--r--
pycore_asdl.h
2.964 KB
-rw-r--r--
pycore_ast.h
30.781 KB
-rw-r--r--
pycore_ast_state.h
6.62 KB
-rw-r--r--
pycore_atexit.h
1.399 KB
-rw-r--r--
pycore_backoff.h
3.811 KB
-rw-r--r--
pycore_bitutils.h
5.885 KB
-rw-r--r--
pycore_blocks_output_buffer.h
8.566 KB
-rw-r--r--
pycore_brc.h
2.053 KB
-rw-r--r--
pycore_bytes_methods.h
3.841 KB
-rw-r--r--
pycore_bytesobject.h
4.979 KB
-rw-r--r--
pycore_call.h
5.991 KB
-rw-r--r--
pycore_capsule.h
0.388 KB
-rw-r--r--
pycore_cell.h
1.032 KB
-rw-r--r--
pycore_ceval.h
10.9 KB
-rw-r--r--
pycore_ceval_state.h
3.829 KB
-rw-r--r--
pycore_code.h
19.398 KB
-rw-r--r--
pycore_codecs.h
2.407 KB
-rw-r--r--
pycore_compile.h
3.662 KB
-rw-r--r--
pycore_complexobject.h
0.574 KB
-rw-r--r--
pycore_condvar.h
2.641 KB
-rw-r--r--
pycore_context.h
1.154 KB
-rw-r--r--
pycore_critical_section.h
7.781 KB
-rw-r--r--
pycore_crossinterp.h
11.844 KB
-rw-r--r--
pycore_descrobject.h
0.53 KB
-rw-r--r--
pycore_dict.h
11.977 KB
-rw-r--r--
pycore_dict_state.h
0.715 KB
-rw-r--r--
pycore_dtoa.h
1.687 KB
-rw-r--r--
pycore_emscripten_signal.h
0.669 KB
-rw-r--r--
pycore_emscripten_trampoline.h
3.105 KB
-rw-r--r--
pycore_exceptions.h
0.879 KB
-rw-r--r--
pycore_faulthandler.h
2.192 KB
-rw-r--r--
pycore_fileutils.h
9.246 KB
-rw-r--r--
pycore_fileutils_windows.h
2.649 KB
-rw-r--r--
pycore_floatobject.h
1.46 KB
-rw-r--r--
pycore_flowgraph.h
1.454 KB
-rw-r--r--
pycore_format.h
0.469 KB
-rw-r--r--
pycore_frame.h
10.62 KB
-rw-r--r--
pycore_freelist.h
4.697 KB
-rw-r--r--
pycore_function.h
1.502 KB
-rw-r--r--
pycore_gc.h
12.663 KB
-rw-r--r--
pycore_genobject.h
0.839 KB
-rw-r--r--
pycore_getopt.h
0.479 KB
-rw-r--r--
pycore_gil.h
2.145 KB
-rw-r--r--
pycore_global_objects.h
3.018 KB
-rw-r--r--
pycore_global_objects_fini_generated.h
115.043 KB
-rw-r--r--
pycore_global_strings.h
26.08 KB
-rw-r--r--
pycore_hamt.h
3.654 KB
-rw-r--r--
pycore_hashtable.h
4.259 KB
-rw-r--r--
pycore_identifier.h
0.503 KB
-rw-r--r--
pycore_import.h
7.55 KB
-rw-r--r--
pycore_importdl.h
3.96 KB
-rw-r--r--
pycore_initconfig.h
6.226 KB
-rw-r--r--
pycore_instruction_sequence.h
2.11 KB
-rw-r--r--
pycore_instruments.h
2.276 KB
-rw-r--r--
pycore_interp.h
14.71 KB
-rw-r--r--
pycore_intrinsics.h
1.715 KB
-rw-r--r--
pycore_jit.h
0.515 KB
-rw-r--r--
pycore_list.h
1.815 KB
-rw-r--r--
pycore_llist.h
2.363 KB
-rw-r--r--
pycore_lock.h
8.338 KB
-rw-r--r--
pycore_long.h
9.732 KB
-rw-r--r--
pycore_memoryobject.h
0.417 KB
-rw-r--r--
pycore_mimalloc.h
1.599 KB
-rw-r--r--
pycore_modsupport.h
3.272 KB
-rw-r--r--
pycore_moduleobject.h
1.535 KB
-rw-r--r--
pycore_namespace.h
0.425 KB
-rw-r--r--
pycore_object.h
27.28 KB
-rw-r--r--
pycore_object_alloc.h
2.125 KB
-rw-r--r--
pycore_object_stack.h
2.328 KB
-rw-r--r--
pycore_object_state.h
0.92 KB
-rw-r--r--
pycore_obmalloc.h
26.775 KB
-rw-r--r--
pycore_obmalloc_init.h
1.89 KB
-rw-r--r--
pycore_opcode_metadata.h
82.736 KB
-rw-r--r--
pycore_opcode_utils.h
2.072 KB
-rw-r--r--
pycore_optimizer.h
8.108 KB
-rw-r--r--
pycore_parking_lot.h
3.272 KB
-rw-r--r--
pycore_parser.h
2.04 KB
-rw-r--r--
pycore_pathconfig.h
0.643 KB
-rw-r--r--
pycore_pyarena.h
2.795 KB
-rw-r--r--
pycore_pyatomic_ft_wrappers.h
7.867 KB
-rw-r--r--
pycore_pybuffer.h
0.498 KB
-rw-r--r--
pycore_pyerrors.h
4.844 KB
-rw-r--r--
pycore_pyhash.h
2.747 KB
-rw-r--r--
pycore_pylifecycle.h
4.36 KB
-rw-r--r--
pycore_pymath.h
8.398 KB
-rw-r--r--
pycore_pymem.h
4.367 KB
-rw-r--r--
pycore_pymem_init.h
3.438 KB
-rw-r--r--
pycore_pystate.h
9.73 KB
-rw-r--r--
pycore_pystats.h
0.41 KB
-rw-r--r--
pycore_pythonrun.h
0.74 KB
-rw-r--r--
pycore_pythread.h
5.304 KB
-rw-r--r--
pycore_qsbr.h
4.812 KB
-rw-r--r--
pycore_range.h
0.338 KB
-rw-r--r--
pycore_runtime.h
12.856 KB
-rw-r--r--
pycore_runtime_init.h
12.739 KB
-rw-r--r--
pycore_runtime_init_generated.h
45.723 KB
-rw-r--r--
pycore_semaphore.h
1.69 KB
-rw-r--r--
pycore_setobject.h
0.929 KB
-rw-r--r--
pycore_signal.h
2.862 KB
-rw-r--r--
pycore_sliceobject.h
0.36 KB
-rw-r--r--
pycore_stackref.h
5.064 KB
-rw-r--r--
pycore_strhex.h
0.989 KB
-rw-r--r--
pycore_structseq.h
0.94 KB
-rw-r--r--
pycore_symtable.h
8.468 KB
-rw-r--r--
pycore_sysmodule.h
1.149 KB
-rw-r--r--
pycore_time.h
11.518 KB
-rw-r--r--
pycore_token.h
2.931 KB
-rw-r--r--
pycore_traceback.h
3.544 KB
-rw-r--r--
pycore_tracemalloc.h
4.427 KB
-rw-r--r--
pycore_tstate.h
1.322 KB
-rw-r--r--
pycore_tuple.h
0.801 KB
-rw-r--r--
pycore_typeobject.h
8.669 KB
-rw-r--r--
pycore_typevarobject.h
0.902 KB
-rw-r--r--
pycore_ucnhash.h
0.936 KB
-rw-r--r--
pycore_unicodeobject.h
12.959 KB
-rw-r--r--
pycore_unicodeobject_generated.h
129.043 KB
-rw-r--r--
pycore_unionobject.h
0.725 KB
-rw-r--r--
pycore_uop_ids.h
10.026 KB
-rw-r--r--
pycore_uop_metadata.h
38.544 KB
-rw-r--r--
pycore_warnings.h
0.82 KB
-rw-r--r--
pycore_weakref.h
3.253 KB
-rw-r--r--