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

Commitda17611

Browse files
committed
Added VarHasAttr
1 parentba57c13 commitda17611

File tree

1 file changed

+12
-4
lines changed

1 file changed

+12
-4
lines changed

‎Source/VarPyth.pas‎

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,8 @@ function VarIsSubtypeOf(const ADerived, AType : Variant): Boolean;
7171
functionVarIsNone(const AValue : Variant): Boolean;
7272
functionVarIsTrue(const AValue : Variant): Boolean;
7373

74-
functionVarModuleHasObject(const AModule : Variant; aObj: AnsiString): Boolean;
74+
functionVarModuleHasObject(const AModule : Variant;const aObj: AnsiString): Boolean;
75+
functionVarHasAttr(const AValue: Variant;const AAttr: AnsiString): Boolean;
7576

7677
functionNewPythonList(const ASize : Integer =0 ): Variant;
7778
functionNewPythonTuple(const ASize : Integer ): Variant;
@@ -570,15 +571,22 @@ function VarIsTrue(const AValue : Variant): Boolean;
570571
Result := AValue;// the cast into a boolean will call the PyObject_IsTrue API.
571572
end;
572573

573-
functionVarModuleHasObject(const AModule : Variant; aObj: AnsiString): Boolean;
574+
functionVarModuleHasObject(const AModule : Variant;const aObj: AnsiString):
575+
Boolean;
574576
begin
575577
with GetPythonEnginedo
576-
Result := VarIsPython(AModule)and
577-
PyModule_Check(ExtractPythonObjectFrom(AModule))and
578+
Result := VarIsPythonModule(AModule)and
578579
Assigned(PyDict_GetItemString(
579580
PyModule_GetDict(ExtractPythonObjectFrom(AModule)),PAnsiChar(aObj)));
580581
end;
581582

583+
functionVarHasAttr(const AValue: Variant;const AAttr: AnsiString): Boolean;
584+
begin
585+
with GetPythonEnginedo
586+
Result := VarIsPython(AValue)and
587+
(PyObject_HasAttrString(ExtractPythonObjectFrom(AValue), PAnsiChar(AAttr)) =1);
588+
end;
589+
582590
functionNewPythonList(const ASize : Integer =0 ): Variant;
583591
var
584592
_list : PPyObject;

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp