diff options
author | bscan <10503608+bscan@users.noreply.github.com> | 2022-10-23 13:33:50 -0400 |
---|---|---|
committer | bscan <10503608+bscan@users.noreply.github.com> | 2022-10-23 13:33:50 -0400 |
commit | 11e4595243a3760e4ae371c9445d75e894fe6316 (patch) | |
tree | 1673db3696774e1849fbdeec18d4e8c601cf5921 /testWorkspace | |
parent | 2381175c29e806184ddc78ac6a48ad54b9af674d (diff) | |
download | PerlNavigator-11e4595243a3760e4ae371c9445d75e894fe6316.zip |
Support for Object::Pad fields, and support for Mars/Venus
Diffstat (limited to 'testWorkspace')
-rw-r--r-- | testWorkspace/MyLib/MarsExample.pm | 14 | ||||
-rw-r--r-- | testWorkspace/MyLib/ObjectPad.pm | 5 | ||||
-rw-r--r-- | testWorkspace/mainTest.pl | 9 |
3 files changed, 28 insertions, 0 deletions
diff --git a/testWorkspace/MyLib/MarsExample.pm b/testWorkspace/MyLib/MarsExample.pm new file mode 100644 index 0000000..8d708fd --- /dev/null +++ b/testWorkspace/MyLib/MarsExample.pm @@ -0,0 +1,14 @@ +package MyLib::MarsExample; + +use v5.26; +use warnings; +use Mars::Class; + +attr 'foo'; +attr 'bar'; + +sub marsMethod { + print "in marsMethod\n"; +} + +1; diff --git a/testWorkspace/MyLib/ObjectPad.pm b/testWorkspace/MyLib/ObjectPad.pm index d438c7a..dd475de 100644 --- a/testWorkspace/MyLib/ObjectPad.pm +++ b/testWorkspace/MyLib/ObjectPad.pm @@ -9,6 +9,11 @@ has $y :param = 0; has @foo; has %bar; +field $mutatorField: mutator; +field $writerField: writer; + +my $qux = 10; + method move ($dX, $dY) { $x += $dX; $y += $dY; diff --git a/testWorkspace/mainTest.pl b/testWorkspace/mainTest.pl index ce8d6b5..b5cba8e 100644 --- a/testWorkspace/mainTest.pl +++ b/testWorkspace/mainTest.pl @@ -22,6 +22,7 @@ use MyLib::ObjectPad; use MyLib::ClassAccessor; use MyLib::ClassTiny; use MyLib::ObjectTiny; +use MyLib::MarsExample; use MySubClass; @@ -132,6 +133,10 @@ my $dbh2 = MyLib::DBI->connect(); my $padObj = MyLib::ObjectPad->new(x => 5, y => 10); $padObj->describe(); +$padObj->mutatorField = 10; +$padObj->set_writerField(20); +print($padObj->mutatorField); + my $caObj = MyLib::ClassAccessor->new(); my $caaObj = MyLib::ClassAccessorAntlers->new(); @@ -140,6 +145,10 @@ my $ctObj = MyLib::ClassTiny->new(); my $otObj = MyLib::ObjectTiny->new(); +my $marsObj = MyLib::MarsExample->new(foo=>10); +print $marsObj->foo(20); +print $marsObj->foo; + use attributes (); print "ObjectPad attributes: " . attributes::get(\&MyLib::ObjectPad::describe) . "\n"; |