Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit08609b9

Browse files
committed
drop _PyObject_GetDictPtr and use PyObject_GenericGetDict instead
1 parent1985a22 commit08609b9

File tree

2 files changed

+9
-8
lines changed

2 files changed

+9
-8
lines changed

‎src/runtime/importhook.cs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ internal static unsafe void Initialize()
9494

9595
// both dicts are borrowed references
9696
BorrowedReferencemod_dict=Runtime.PyModule_GetDict(ClrModuleReference);
97-
BorrowedReferenceclr_dict=*Runtime._PyObject_GetDictPtr(root.ObjectReference);
97+
usingvarclr_dict=Runtime.PyObject_GenericGetDict(root.ObjectReference);
9898

9999
Runtime.PyDict_Update(mod_dict,clr_dict);
100100
BorrowedReferencedict=Runtime.PyImport_GetModuleDict();
@@ -156,8 +156,10 @@ public static unsafe NewReference GetCLRModule(BorrowedReference fromList = defa
156156
// update the module dictionary with the contents of the root dictionary
157157
root.LoadNames();
158158
BorrowedReferencepy_mod_dict=Runtime.PyModule_GetDict(ClrModuleReference);
159-
BorrowedReferenceclr_dict=*Runtime._PyObject_GetDictPtr(root.ObjectReference);
160-
Runtime.PyDict_Update(py_mod_dict,clr_dict);
159+
using(varclr_dict=Runtime.PyObject_GenericGetDict(root.ObjectReference))
160+
{
161+
Runtime.PyDict_Update(py_mod_dict,clr_dict);
162+
}
161163

162164
// find any items from the from list and get them from the root if they're not
163165
// already in the module dictionary

‎src/runtime/runtime.cs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2022,9 +2022,8 @@ internal static IntPtr PyType_GenericAlloc(IntPtr type, long n)
20222022

20232023
internalstaticintPyObject_GenericSetAttr(IntPtrobj,IntPtrname,IntPtrvalue)=>Delegates.PyObject_GenericSetAttr(obj,name,value);
20242024

2025-
2026-
internalstaticBorrowedReference*_PyObject_GetDictPtr(BorrowedReferenceobj)=>Delegates._PyObject_GetDictPtr(obj);
2027-
2025+
internalstaticNewReferencePyObject_GenericGetDict(BorrowedReferenceo)=>PyObject_GenericGetDict(o,IntPtr.Zero);
2026+
internalstaticNewReferencePyObject_GenericGetDict(BorrowedReferenceo,IntPtrcontext)=>Delegates.PyObject_GenericGetDict(o,context);
20282027

20292028
internalstaticvoidPyObject_GC_Del(IntPtrtp)=>Delegates.PyObject_GC_Del(tp);
20302029

@@ -2472,8 +2471,8 @@ static Delegates()
24722471
PyType_Ready=(delegate* unmanaged[Cdecl]<IntPtr,int>)GetFunctionByName(nameof(PyType_Ready),GetUnmanagedDll(_PythonDll));
24732472
_PyType_Lookup=(delegate* unmanaged[Cdecl]<IntPtr,IntPtr,IntPtr>)GetFunctionByName(nameof(_PyType_Lookup),GetUnmanagedDll(_PythonDll));
24742473
PyObject_GenericGetAttr=(delegate* unmanaged[Cdecl]<IntPtr,IntPtr,IntPtr>)GetFunctionByName(nameof(PyObject_GenericGetAttr),GetUnmanagedDll(_PythonDll));
2474+
PyObject_GenericGetDict=(delegate* unmanaged[Cdecl]<BorrowedReference,IntPtr,NewReference>)GetFunctionByName(nameof(PyObject_GenericGetDict),GetUnmanagedDll(PythonDLL));
24752475
PyObject_GenericSetAttr=(delegate* unmanaged[Cdecl]<IntPtr,IntPtr,IntPtr,int>)GetFunctionByName(nameof(PyObject_GenericSetAttr),GetUnmanagedDll(_PythonDll));
2476-
_PyObject_GetDictPtr=(delegate* unmanaged[Cdecl]<BorrowedReference,BorrowedReference*>)GetFunctionByName(nameof(_PyObject_GetDictPtr),GetUnmanagedDll(_PythonDll));
24772476
PyObject_GC_Del=(delegate* unmanaged[Cdecl]<IntPtr,void>)GetFunctionByName(nameof(PyObject_GC_Del),GetUnmanagedDll(_PythonDll));
24782477
PyObject_GC_Track=(delegate* unmanaged[Cdecl]<IntPtr,void>)GetFunctionByName(nameof(PyObject_GC_Track),GetUnmanagedDll(_PythonDll));
24792478
PyObject_GC_UnTrack=(delegate* unmanaged[Cdecl]<IntPtr,void>)GetFunctionByName(nameof(PyObject_GC_UnTrack),GetUnmanagedDll(_PythonDll));
@@ -2738,7 +2737,6 @@ static Delegates()
27382737
internalstaticdelegate* unmanaged[Cdecl]<IntPtr,IntPtr,IntPtr>_PyType_Lookup{get;}
27392738
internalstaticdelegate* unmanaged[Cdecl]<IntPtr,IntPtr,IntPtr>PyObject_GenericGetAttr{get;}
27402739
internalstaticdelegate* unmanaged[Cdecl]<IntPtr,IntPtr,IntPtr,int>PyObject_GenericSetAttr{get;}
2741-
internalstaticdelegate* unmanaged[Cdecl]<BorrowedReference,BorrowedReference*>_PyObject_GetDictPtr{get;}
27422740
internalstaticdelegate* unmanaged[Cdecl]<IntPtr,void>PyObject_GC_Del{get;}
27432741
internalstaticdelegate* unmanaged[Cdecl]<IntPtr,void>PyObject_GC_Track{get;}
27442742
internalstaticdelegate* unmanaged[Cdecl]<IntPtr,void>PyObject_GC_UnTrack{get;}
@@ -2775,6 +2773,7 @@ static Delegates()
27752773
internalstaticdelegate* unmanaged[Cdecl]<IntPtr,IntPtr,void>PyException_SetCause{get;}
27762774
internalstaticdelegate* unmanaged[Cdecl]<uint,IntPtr,int>PyThreadState_SetAsyncExcLLP64{get;}
27772775
internalstaticdelegate* unmanaged[Cdecl]<ulong,IntPtr,int>PyThreadState_SetAsyncExcLP64{get;}
2776+
internalstaticdelegate* unmanaged[Cdecl]<BorrowedReference,IntPtr,NewReference>PyObject_GenericGetDict{get;}
27782777
}
27792778
}
27802779

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp