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/python35/include/python3.5m/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //opt/alt/python35/include/python3.5m/dictobject.h
#ifndef Py_DICTOBJECT_H
#define Py_DICTOBJECT_H
#ifdef __cplusplus
extern "C" {
#endif


/* Dictionary object type -- mapping from hashable object to object */

/* The distribution includes a separate file, Objects/dictnotes.txt,
   describing explorations into dictionary design and optimization.
   It covers typical dictionary use patterns, the parameters for
   tuning dictionaries, and several ideas for possible optimizations.
*/

#ifndef Py_LIMITED_API

typedef struct _dictkeysobject PyDictKeysObject;

/* The ma_values pointer is NULL for a combined table
 * or points to an array of PyObject* for a split table
 */
typedef struct {
    PyObject_HEAD
    Py_ssize_t ma_used;
    PyDictKeysObject *ma_keys;
    PyObject **ma_values;
} PyDictObject;

typedef struct {
    PyObject_HEAD
    PyDictObject *dv_dict;
} _PyDictViewObject;

#endif /* Py_LIMITED_API */

PyAPI_DATA(PyTypeObject) PyDict_Type;
PyAPI_DATA(PyTypeObject) PyDictIterKey_Type;
PyAPI_DATA(PyTypeObject) PyDictIterValue_Type;
PyAPI_DATA(PyTypeObject) PyDictIterItem_Type;
PyAPI_DATA(PyTypeObject) PyDictKeys_Type;
PyAPI_DATA(PyTypeObject) PyDictItems_Type;
PyAPI_DATA(PyTypeObject) PyDictValues_Type;

#define PyDict_Check(op) \
                 PyType_FastSubclass(Py_TYPE(op), Py_TPFLAGS_DICT_SUBCLASS)
#define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type)
#define PyDictKeys_Check(op) PyObject_TypeCheck(op, &PyDictKeys_Type)
#define PyDictItems_Check(op) PyObject_TypeCheck(op, &PyDictItems_Type)
#define PyDictValues_Check(op) PyObject_TypeCheck(op, &PyDictValues_Type)
/* This excludes Values, since they are not sets. */
# define PyDictViewSet_Check(op) \
    (PyDictKeys_Check(op) || PyDictItems_Check(op))


PyAPI_FUNC(PyObject *) PyDict_New(void);
PyAPI_FUNC(PyObject *) PyDict_GetItem(PyObject *mp, PyObject *key);
#ifndef Py_LIMITED_API
PyAPI_FUNC(PyObject *) _PyDict_GetItem_KnownHash(PyObject *mp, PyObject *key,
                                       Py_hash_t hash);
#endif
PyAPI_FUNC(PyObject *) PyDict_GetItemWithError(PyObject *mp, PyObject *key);
PyAPI_FUNC(PyObject *) _PyDict_GetItemIdWithError(PyObject *dp,
                                                  struct _Py_Identifier *key);
#ifndef Py_LIMITED_API
PyAPI_FUNC(PyObject *) PyDict_SetDefault(
    PyObject *mp, PyObject *key, PyObject *defaultobj);
#endif
PyAPI_FUNC(int) PyDict_SetItem(PyObject *mp, PyObject *key, PyObject *item);
#ifndef Py_LIMITED_API
PyAPI_FUNC(int) _PyDict_SetItem_KnownHash(PyObject *mp, PyObject *key,
                                          PyObject *item, Py_hash_t hash);
#endif
PyAPI_FUNC(int) PyDict_DelItem(PyObject *mp, PyObject *key);
#ifndef Py_LIMITED_API
PyAPI_FUNC(int) _PyDict_DelItem_KnownHash(PyObject *mp, PyObject *key,
                                          Py_hash_t hash);
PyAPI_FUNC(int) _PyDict_DelItemIf(PyObject *mp, PyObject *key,
                                  int (*predicate)(PyObject *value));
#endif
PyAPI_FUNC(void) PyDict_Clear(PyObject *mp);
PyAPI_FUNC(int) PyDict_Next(
    PyObject *mp, Py_ssize_t *pos, PyObject **key, PyObject **value);
#ifndef Py_LIMITED_API
PyDictKeysObject *_PyDict_NewKeysForClass(void);
PyAPI_FUNC(PyObject *) PyObject_GenericGetDict(PyObject *, void *);
PyAPI_FUNC(int) _PyDict_Next(
    PyObject *mp, Py_ssize_t *pos, PyObject **key, PyObject **value, Py_hash_t *hash);
PyObject *_PyDictView_New(PyObject *, PyTypeObject *);
#endif
PyAPI_FUNC(PyObject *) PyDict_Keys(PyObject *mp);
PyAPI_FUNC(PyObject *) PyDict_Values(PyObject *mp);
PyAPI_FUNC(PyObject *) PyDict_Items(PyObject *mp);
PyAPI_FUNC(Py_ssize_t) PyDict_Size(PyObject *mp);
PyAPI_FUNC(PyObject *) PyDict_Copy(PyObject *mp);
PyAPI_FUNC(int) PyDict_Contains(PyObject *mp, PyObject *key);
#ifndef Py_LIMITED_API
PyAPI_FUNC(int) _PyDict_Contains(PyObject *mp, PyObject *key, Py_hash_t hash);
PyAPI_FUNC(PyObject *) _PyDict_NewPresized(Py_ssize_t minused);
PyAPI_FUNC(void) _PyDict_MaybeUntrack(PyObject *mp);
PyAPI_FUNC(int) _PyDict_HasOnlyStringKeys(PyObject *mp);
Py_ssize_t _PyDict_KeysSize(PyDictKeysObject *keys);
Py_ssize_t _PyDict_SizeOf(PyDictObject *);
PyObject *_PyDict_Pop(PyDictObject *, PyObject *, PyObject *);
PyObject *_PyDict_Pop_KnownHash(PyDictObject *, PyObject *, Py_hash_t, PyObject *);
PyObject *_PyDict_FromKeys(PyObject *, PyObject *, PyObject *);
#define _PyDict_HasSplitTable(d) ((d)->ma_values != NULL)

PyAPI_FUNC(int) PyDict_ClearFreeList(void);
#endif

/* PyDict_Update(mp, other) is equivalent to PyDict_Merge(mp, other, 1). */
PyAPI_FUNC(int) PyDict_Update(PyObject *mp, PyObject *other);

/* PyDict_Merge updates/merges from a mapping object (an object that
   supports PyMapping_Keys() and PyObject_GetItem()).  If override is true,
   the last occurrence of a key wins, else the first.  The Python
   dict.update(other) is equivalent to PyDict_Merge(dict, other, 1).
*/
PyAPI_FUNC(int) PyDict_Merge(PyObject *mp,
                                   PyObject *other,
                                   int override);

#ifndef Py_LIMITED_API
PyAPI_FUNC(PyObject *) _PyDictView_Intersect(PyObject* self, PyObject *other);
#endif

/* PyDict_MergeFromSeq2 updates/merges from an iterable object producing
   iterable objects of length 2.  If override is true, the last occurrence
   of a key wins, else the first.  The Python dict constructor dict(seq2)
   is equivalent to dict={}; PyDict_MergeFromSeq(dict, seq2, 1).
*/
PyAPI_FUNC(int) PyDict_MergeFromSeq2(PyObject *d,
                                           PyObject *seq2,
                                           int override);

PyAPI_FUNC(PyObject *) PyDict_GetItemString(PyObject *dp, const char *key);
PyAPI_FUNC(PyObject *) _PyDict_GetItemId(PyObject *dp, struct _Py_Identifier *key);
PyAPI_FUNC(int) PyDict_SetItemString(PyObject *dp, const char *key, PyObject *item);
PyAPI_FUNC(int) _PyDict_SetItemId(PyObject *dp, struct _Py_Identifier *key, PyObject *item);
PyAPI_FUNC(int) PyDict_DelItemString(PyObject *dp, const char *key);

#ifndef Py_LIMITED_API
PyAPI_FUNC(int) _PyDict_DelItemId(PyObject *mp, struct _Py_Identifier *key);
PyAPI_FUNC(void) _PyDict_DebugMallocStats(FILE *out);

int _PyObjectDict_SetItem(PyTypeObject *tp, PyObject **dictptr, PyObject *name, PyObject *value);
PyObject *_PyDict_LoadGlobal(PyDictObject *, PyDictObject *, PyObject *);
#endif

#ifdef __cplusplus
}
#endif
#endif /* !Py_DICTOBJECT_H */
Name
Size
Permissions
Options
Python-ast.h
20.362 KB
-rw-r--r--
Python.h
2.838 KB
-rw-r--r--
abstract.h
42.795 KB
-rw-r--r--
accu.h
0.992 KB
-rw-r--r--
asdl.h
1.156 KB
-rw-r--r--
ast.h
0.466 KB
-rw-r--r--
bitset.h
0.773 KB
-rw-r--r--
bltinmodule.h
0.258 KB
-rw-r--r--
boolobject.h
0.865 KB
-rw-r--r--
bytearrayobject.h
2.064 KB
-rw-r--r--
bytes_methods.h
1.986 KB
-rw-r--r--
bytesobject.h
4.868 KB
-rw-r--r--
cellobject.h
0.685 KB
-rw-r--r--
ceval.h
7.457 KB
-rw-r--r--
classobject.h
1.627 KB
-rw-r--r--
code.h
5.139 KB
-rw-r--r--
codecs.h
6.536 KB
-rw-r--r--
compile.h
2.113 KB
-rw-r--r--
complexobject.h
1.765 KB
-rw-r--r--
datetime.h
8.342 KB
-rw-r--r--
descrobject.h
2.845 KB
-rw-r--r--
dictobject.h
6.187 KB
-rw-r--r--
dtoa.h
0.447 KB
-rw-r--r--
dynamic_annotations.h
21.942 KB
-rw-r--r--
enumobject.h
0.247 KB
-rw-r--r--
errcode.h
1.462 KB
-rw-r--r--
eval.h
0.583 KB
-rw-r--r--
fileobject.h
1.476 KB
-rw-r--r--
fileutils.h
2.81 KB
-rw-r--r--
floatobject.h
4.532 KB
-rw-r--r--
frameobject.h
3.447 KB
-rw-r--r--
funcobject.h
3.683 KB
-rw-r--r--
genobject.h
2.606 KB
-rw-r--r--
graminit.h
1.898 KB
-rw-r--r--
grammar.h
1.996 KB
-rw-r--r--
import.h
3.81 KB
-rw-r--r--
intrcheck.h
0.449 KB
-rw-r--r--
iterobject.h
0.554 KB
-rw-r--r--
listobject.h
2.832 KB
-rw-r--r--
longintrepr.h
3.903 KB
-rw-r--r--
longobject.h
8.092 KB
-rw-r--r--
marshal.h
0.784 KB
-rw-r--r--
memoryobject.h
2.632 KB
-rw-r--r--
metagrammar.h
0.247 KB
-rw-r--r--
methodobject.h
3.288 KB
-rw-r--r--
modsupport.h
5.911 KB
-rw-r--r--
moduleobject.h
2.095 KB
-rw-r--r--
namespaceobject.h
0.29 KB
-rw-r--r--
node.h
0.983 KB
-rw-r--r--
object.h
39.067 KB
-rw-r--r--
objimpl.h
13.647 KB
-rw-r--r--
odictobject.h
1.299 KB
-rw-r--r--
opcode.h
4.809 KB
-rw-r--r--
osdefs.h
0.675 KB
-rw-r--r--
parsetok.h
2.817 KB
-rw-r--r--
patchlevel.h
1.102 KB
-rw-r--r--
pgen.h
0.247 KB
-rw-r--r--
pgenheaders.h
1.117 KB
-rw-r--r--
py_curses.h
4.077 KB
-rw-r--r--
pyarena.h
2.68 KB
-rw-r--r--
pyatomic.h
7.943 KB
-rw-r--r--
pycapsule.h
1.686 KB
-rw-r--r--
pyconfig-64.h
42.805 KB
-rw-r--r--
pyconfig.h
0.158 KB
-rw-r--r--
pyctype.h
1.289 KB
-rw-r--r--
pydebug.h
1.113 KB
-rw-r--r--
pyerrors.h
15.949 KB
-rw-r--r--
pyexpat.h
2.393 KB
-rw-r--r--
pyfpe.h
8.272 KB
-rw-r--r--
pygetopt.h
0.379 KB
-rw-r--r--
pyhash.h
4.174 KB
-rw-r--r--
pylifecycle.h
3.721 KB
-rw-r--r--
pymacconfig.h
2.919 KB
-rw-r--r--
pymacro.h
3.22 KB
-rw-r--r--
pymath.h
7.05 KB
-rw-r--r--
pymem.h
6.868 KB
-rw-r--r--
pyport.h
31.27 KB
-rw-r--r--
pystate.h
9.268 KB
-rw-r--r--
pystrcmp.h
0.426 KB
-rw-r--r--
pystrhex.h
0.433 KB
-rw-r--r--
pystrtod.h
1.246 KB
-rw-r--r--
pythonrun.h
6.531 KB
-rw-r--r--
pythread.h
2.965 KB
-rw-r--r--
pytime.h
6.498 KB
-rw-r--r--
rangeobject.h
0.614 KB
-rw-r--r--
setobject.h
3.213 KB
-rw-r--r--
sliceobject.h
2.427 KB
-rw-r--r--
structmember.h
2.02 KB
-rw-r--r--
structseq.h
1.321 KB
-rw-r--r--
symtable.h
4.747 KB
-rw-r--r--
sysmodule.h
1.323 KB
-rw-r--r--
token.h
1.897 KB
-rw-r--r--
traceback.h
2.161 KB
-rw-r--r--
tupleobject.h
2.387 KB
-rw-r--r--
typeslots.h
2.2 KB
-rw-r--r--
ucnhash.h
1.031 KB
-rw-r--r--
unicodeobject.h
77.337 KB
-rw-r--r--
warnings.h
1.393 KB
-rw-r--r--
weakrefobject.h
2.799 KB
-rw-r--r--