Merge pull request #1945 from ZackerySpytz/attribute-attribute2ref-typos

Fix typos in attribute2ref() in Lib/typemaps/attribute.swg
This commit is contained in:
William S Fulton 2021-02-17 17:57:34 +00:00 • committed by GitHub
commit 1ec44da352
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 7 additions and 1 deletions

View file

@ -95,6 +95,7 @@ struct MyFoo; // %attribute2 does not work with templates
// class/struct attribute with get/set methods using return/pass by reference
%attribute2(MyClass, MyFoo, Foo, GetFoo, SetFoo);
%attribute2ref(MyClass, MyFoo, Foo2);
%inline %{
struct MyFoo {
MyFoo() : x(-1) {}
@ -102,9 +103,11 @@ struct MyFoo; // %attribute2 does not work with templates
};
class MyClass {
MyFoo foo;
MyFoo foo2;
public:
MyFoo& GetFoo() { return foo; }
void SetFoo(const MyFoo& other) { foo = other; }
MyFoo& Foo2() { return foo2; }
};
%}

View file

@ -45,6 +45,9 @@ myClass = li_attribute.MyClass()
myClass.Foo = myFoo
if myClass.Foo.x != 8:
raise RuntimeError
myClass.Foo2 = myFoo
if myClass.Foo2.x != 8:
raise RuntimeError
# class/struct attribute with get/set methods using return/pass by value
myClassVal = li_attribute.MyClassVal()

View file

@ -224,7 +224,7 @@
#if #AccessorMethod != ""
%attribute_custom(%arg(Class), %arg(AttributeType), AttributeName, AccessorMethod, AccessorMethod, &self_->AccessorMethod(), self_->AccessorMethod() = *val_)
#else
%attribute_custom(%arg(Class), %arg(AttributeType), AccessorName, AccessorName, AccessorName, &self_->AccessorName(), self_->AccessorName() = *val_)
%attribute_custom(%arg(Class), %arg(AttributeType), AttributeName, AttributeName, AttributeName, &self_->AttributeName(), self_->AttributeName() = *val_)
#endif
%enddef