Skip to content

Commit

Permalink
Object-InsideOut v3.98
Browse files Browse the repository at this point in the history
  • Loading branch information
jdhedden committed Apr 22, 2016
1 parent 8f75b9f commit f0107b2
Show file tree
Hide file tree
Showing 21 changed files with 68 additions and 58 deletions.
3 changes: 3 additions & 0 deletions Changes
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
Revision history for Perl extension Object::InsideOut.

3.98 Thu Oct 3 19:04:26 2013
- User string compare for version checks

3.97 Thu Nov 15 13:34:15 2012
- Fix for panic during destroy from Krzysztof Lewicki

Expand Down
2 changes: 1 addition & 1 deletion README
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Object-InsideOut version 3.97
Object-InsideOut version 3.98
=============================

This module provides comprehensive support for implementing classes using the
Expand Down
4 changes: 2 additions & 2 deletions examples/YAPI.pm
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package Term::YAPI; {
use strict;
use warnings;

our $VERSION = '3.97';
our $VERSION = '3.98';

#####
#
Expand All @@ -22,7 +22,7 @@ package Term::YAPI; {
$threaded_okay = !$@;
}

use Object::InsideOut 3.97;
use Object::InsideOut 3.98;

# Default progress indicator is a twirling bar
my @yapi :Field
Expand Down
38 changes: 19 additions & 19 deletions lib/Bundle/Object/InsideOut.pm
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package Bundle::Object::InsideOut;
use strict;
use warnings;

our $VERSION = '3.97';
our $VERSION = '3.98';
$VERSION = eval $VERSION;

1;
Expand All @@ -20,55 +20,55 @@ Bundle::Object::InsideOut - A bundle of modules for full Object::InsideOut suppo
=head1 CONTENTS
Test::Harness 3.25 - Used for module testing
Test::Harness 3.28 - Used for module testing
Test::Simple 0.98 - Used for module testing
Scalar::Util 1.25 - Used by Object::InsideOut
Scalar::Util 1.32 - Used by Object::InsideOut
Pod::Escapes 1.04 - Used by Pod::Simple
Pod::Simple 3.23 - Used by Test::Pod
Pod::Simple 3.28 - Used by Test::Pod
Test::Pod 1.45 - Checks POD syntax
Test::Pod 1.48 - Checks POD syntax
Devel::Symdump 2.08 - Used by Pod::Coverage
Devel::Symdump 2.10 - Used by Pod::Coverage
File::Spec 3.39 - Used by Pod::Parser
File::Spec 3.40 - Used by Pod::Parser
Pod::Parser 1.51 - Used by Pod::Coverage
Pod::Parser 1.61 - Used by Pod::Coverage
Pod::Coverage 0.22 - Used by Test::Pod::Coverage
Pod::Coverage 0.23 - Used by Test::Pod::Coverage
Test::Pod::Coverage 1.08 - Tests POD coverage
threads 1.86 - Support for threads
threads 1.89 - Support for threads
threads::shared 1.42 - Support for sharing objects between threads
threads::shared 1.43 - Support for sharing objects between threads
Want 0.21 - :lvalue accessor support
Data::Dumper 2.136 - Object serialization support
Data::Dumper 2.145 - Object serialization support
Storable 2.39 - Object serialization support
Storable 2.45 - Object serialization support
Devel::StackTrace 1.27 - Used by Exception::Class
Devel::StackTrace 1.30 - Used by Exception::Class
Class::Data::Inheritable 0.08 - Used by Exception::Class
Exception::Class 1.35 - Error handling
Exception::Class 1.37 - Error handling
Object::InsideOut 3.97 - Inside-out object support
Object::InsideOut 3.98 - Inside-out object support
URI 1.60 - Used by LWP::UserAgent
HTML::Tagset 3.20 - Used by LWP::UserAgent
HTML::Parser 3.69 - Used by LWP::UserAgent
HTML::Parser 3.71 - Used by LWP::UserAgent
LWP::UserAgent 6.04 - Used by Math::Random::MT::Auto
LWP::UserAgent 6.05 - Used by Math::Random::MT::Auto
Win32::API 0.68 - Used by Math::Random::MT::Auto (Win XP only)
Win32::API 0.75 - Used by Math::Random::MT::Auto (Win XP only)
Math::Random::MT::Auto 6.22 - Support for :SECURE mode
Expand Down
26 changes: 13 additions & 13 deletions lib/Object/InsideOut.pm
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@ require 5.006;
use strict;
use warnings;

our $VERSION = '3.97';
our $VERSION = '3.98';
$VERSION = eval $VERSION;

use Object::InsideOut::Exception 3.97;
use Object::InsideOut::Util 3.97 qw(create_object hash_re is_it make_shared);
use Object::InsideOut::Metadata 3.97;
use Object::InsideOut::Exception 3.98;
use Object::InsideOut::Util 3.98 qw(create_object hash_re is_it make_shared);
use Object::InsideOut::Metadata 3.98;

require B;

Expand Down Expand Up @@ -768,7 +768,7 @@ sub initialize :Sub(Private)

# Determine classes that need ID subs
# Purge existing references to the default ID sub (i.e., _ID)
# if no objects exist in that heirarchy
# if no objects exist in that hierarchy
my %need_id_sub;
foreach my $class (keys(%{$trees})) {
if (! exists($$id_subs{$class})) {
Expand Down Expand Up @@ -827,7 +827,7 @@ sub initialize :Sub(Private)
if (($$id_subs{$class}{'code'} != $$id_subs{$pkg}{'code'}) ||
($$id_subs{$class}{'pkg'} ne $$id_subs{$pkg}{'pkg'}))
{
# Runtime merging of heirarchies with existing objects
# Runtime merging of hierarchies with existing objects
if (($$id_subs{$class}{'code'} == \&_ID) ||
($$id_subs{$pkg}{'code'} == \&_ID))
{
Expand All @@ -841,7 +841,7 @@ sub initialize :Sub(Private)
'Class2' => "The hierarchy for '$$id_subs{$pkg}{'pkg'}' is using object IDs generated by " .
(($$id_subs{$pkg}{'code'} == \&_ID) ? 'Object::InsideOut' : 'a custom :ID subroutine'))));
}
# Multiple :ID subs in heirarchy
# Multiple :ID subs in hierarchy
my (undef, $file, $line) = @{$$id_subs{$class}{'loc'}};
my (undef, $file2, $line2) = @{$$id_subs{$pkg}{'loc'}};
OIO::Attribute->die(
Expand Down Expand Up @@ -3031,11 +3031,11 @@ sub wrap_MERGE_ARGS :Sub(Private)
# to being only callable from within its class hierarchy
sub wrap_RESTRICTED :Sub(Private)
{
my ($pkg, $method, $code, $except) = @_;
my ($pkg, $method, $code, $exempt) = @_;
return sub {
# Caller must be in class hierarchy, or be specified as an exception
# Caller must be in class hierarchy, or be specified as an exemption
my $caller = caller();
if (! ((grep { $_ eq $caller } @$except) ||
if (! ((grep { $_ eq $caller } @$exempt) ||
$caller->isa($pkg) ||
$pkg->isa($caller)))
{
Expand All @@ -3050,11 +3050,11 @@ sub wrap_RESTRICTED :Sub(Private)
# private (i.e., only callable from within its own class).
sub wrap_PRIVATE :Sub(Private)
{
my ($pkg, $method, $code, $except) = @_;
my ($pkg, $method, $code, $exempt) = @_;
return sub {
# Caller must be in the package, or be specified as an exception
# Caller must be in the package, or be specified as an exemption
my $caller = caller();
if (! grep { $_ eq $caller } @$except) {
if (! grep { $_ eq $caller } @$exempt) {
OIO::Method->die('message' => "Can't call private method '$pkg->$method' from class '$caller'");
}
goto $code;
Expand Down
2 changes: 1 addition & 1 deletion lib/Object/InsideOut.pod
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Object::InsideOut - Comprehensive inside-out object support module

=head1 VERSION

This document describes Object::InsideOut version 3.97
This document describes Object::InsideOut version 3.98

=head1 SYNOPSIS

Expand Down
2 changes: 1 addition & 1 deletion lib/Object/InsideOut/Autoload.pm
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,7 @@ sub AUTOLOAD


# Ensure correct versioning
($Object::InsideOut::VERSION == 3.97)
($Object::InsideOut::VERSION eq '3.98')
or die("Version mismatch\n");

# EOF
2 changes: 1 addition & 1 deletion lib/Object/InsideOut/Chained.pm
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ sub create_CHAINED :Sub(Private)


# Ensure correct versioning
($Object::InsideOut::VERSION == 3.97)
($Object::InsideOut::VERSION eq '3.98')
or die("Version mismatch\n");

# EOF
8 changes: 4 additions & 4 deletions lib/Object/InsideOut/Cumulative.pm
Original file line number Diff line number Diff line change
Expand Up @@ -206,11 +206,11 @@ package Object::InsideOut::Results; {
use strict;
use warnings;

our $VERSION = '3.97';
our $VERSION = '3.98';
$VERSION = eval $VERSION;

use Object::InsideOut 3.97;
use Object::InsideOut::Metadata 3.97;
use Object::InsideOut 3.98;
use Object::InsideOut::Metadata 3.98;

my @VALUES :Field :Arg(VALUES);
my @CLASSES :Field :Arg(CLASSES);
Expand Down Expand Up @@ -260,7 +260,7 @@ add_meta('Object::InsideOut::Results', {


# Ensure correct versioning
($Object::InsideOut::VERSION == 3.97)
($Object::InsideOut::VERSION eq '3.98')
or die("Version mismatch\n");

# EOF
2 changes: 1 addition & 1 deletion lib/Object/InsideOut/Dump.pm
Original file line number Diff line number Diff line change
Expand Up @@ -206,7 +206,7 @@ sub dump


# Ensure correct versioning
($Object::InsideOut::VERSION == 3.97)
($Object::InsideOut::VERSION eq '3.98')
or die("Version mismatch\n");

# EOF
2 changes: 1 addition & 1 deletion lib/Object/InsideOut/Dynamic.pm
Original file line number Diff line number Diff line change
Expand Up @@ -179,7 +179,7 @@ sub create_field


# Ensure correct versioning
($Object::InsideOut::VERSION == 3.97)
($Object::InsideOut::VERSION eq '3.98')
or die("Version mismatch\n");

# EOF
4 changes: 2 additions & 2 deletions lib/Object/InsideOut/Exception.pm
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package Object::InsideOut::Exception; {
use strict;
use warnings;

our $VERSION = '3.97';
our $VERSION = '3.98';
$VERSION = eval $VERSION;

# Exceptions generated by this module
Expand Down Expand Up @@ -122,7 +122,7 @@ sub OIO::die
}


# Provides a fully formated error message for the exception object
# Provides a fully formatted error message for the exception object
sub OIO::full_message
{
my $self = shift;
Expand Down
2 changes: 1 addition & 1 deletion lib/Object/InsideOut/Foreign.pm
Original file line number Diff line number Diff line change
Expand Up @@ -270,7 +270,7 @@ sub inherit


# Ensure correct versioning
($Object::InsideOut::VERSION == 3.97)
($Object::InsideOut::VERSION eq '3.98')
or die("Version mismatch\n");

# EOF
6 changes: 3 additions & 3 deletions lib/Object/InsideOut/Metadata.pm
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package Object::InsideOut::Metadata; {
use strict;
use warnings;

our $VERSION = '3.97';
our $VERSION = '3.98';
$VERSION = eval $VERSION;

# Stores method metadata
Expand Down Expand Up @@ -99,7 +99,7 @@ __DATA__
### Object Interface ###
use Object::InsideOut 3.97;
use Object::InsideOut 3.98;
my @CLASSES :Field;
my @FOREIGN :Field;
Expand Down Expand Up @@ -268,7 +268,7 @@ Object::InsideOut::Metadata - Introspection for Object::InsideOut classes
=head1 VERSION
This document describes Object::InsideOut::Metadata version 3.97
This document describes Object::InsideOut::Metadata version 3.98
=head1 SYNOPSIS
Expand Down
2 changes: 1 addition & 1 deletion lib/Object/InsideOut/Overload.pm
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ sub generate_OVERLOAD :Sub(Private)


# Ensure correct versioning
($Object::InsideOut::VERSION == 3.97)
($Object::InsideOut::VERSION eq '3.98')
or die("Version mismatch\n");

# EOF
4 changes: 2 additions & 2 deletions lib/Object/InsideOut/Secure.pm
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@ package Object::InsideOut::Secure; {
use strict;
use warnings;

our $VERSION = '3.97';
our $VERSION = '3.98';
$VERSION = eval $VERSION;

use Object::InsideOut 3.97 ':hash_only';
use Object::InsideOut 3.98 ':hash_only';

# Holds used IDs
my %used :Field = ( 0 => undef );
Expand Down
2 changes: 1 addition & 1 deletion lib/Object/InsideOut/Universal.pm
Original file line number Diff line number Diff line change
Expand Up @@ -211,7 +211,7 @@ sub install_UNIVERSAL


# Ensure correct versioning
($Object::InsideOut::VERSION == 3.97)
($Object::InsideOut::VERSION eq '3.98')
or die("Version mismatch\n");

# EOF
4 changes: 2 additions & 2 deletions lib/Object/InsideOut/Util.pm
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@ require 5.006;
use strict;
use warnings;

our $VERSION = '3.97';
our $VERSION = '3.98';
$VERSION = eval $VERSION;

use Object::InsideOut::Metadata 3.97;
use Object::InsideOut::Metadata 3.98;

### Module Initialization ###

Expand Down
2 changes: 1 addition & 1 deletion lib/Object/InsideOut/attributes.pm
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ sub FETCH_CODE_ATTRIBUTES :Sub { return (FETCH_ATTRS('CODE', @_)); }


# Ensure correct versioning
($Object::InsideOut::VERSION == 3.97)
($Object::InsideOut::VERSION eq '3.98')
or die("Version mismatch\n");

# EOF
2 changes: 1 addition & 1 deletion lib/Object/InsideOut/lvalue.pm
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,7 @@ _PRE_


# Ensure correct versioning
($Object::InsideOut::VERSION == 3.97)
($Object::InsideOut::VERSION eq '3.98')
or die("Version mismatch\n");

# EOF
7 changes: 7 additions & 0 deletions t/99-pod.t
Original file line number Diff line number Diff line change
Expand Up @@ -170,4 +170,11 @@ syntaxes
READONLY
Arrayify
Boolify
Globify
Hashify
Numerify
PreInit
YAPI
__END__

0 comments on commit f0107b2

Please sign in to comment.