You are viewing a plain text version of this content. The canonical link for it is here.
Posted to docs-cvs@perl.apache.org by ra...@apache.org on 2005/04/20 07:14:09 UTC
svn commit: r162015 - in perl/modperl/docs/trunk/src/docs/2.0/api:
APR/Error.pod APR/Status.pod config.cfg
Author: randyk
Date: Tue Apr 19 22:14:07 2005
New Revision: 162015
URL: http://svn.apache.org/viewcvs?view=rev&rev=162015
Log:
add documentation for APR::Status.
Added:
perl/modperl/docs/trunk/src/docs/2.0/api/APR/Status.pod (with props)
Modified:
perl/modperl/docs/trunk/src/docs/2.0/api/APR/Error.pod
perl/modperl/docs/trunk/src/docs/2.0/api/config.cfg
Modified: perl/modperl/docs/trunk/src/docs/2.0/api/APR/Error.pod
URL: http://svn.apache.org/viewcvs/perl/modperl/docs/trunk/src/docs/2.0/api/APR/Error.pod?view=diff&r1=162014&r2=162015
==============================================================================
--- perl/modperl/docs/trunk/src/docs/2.0/api/APR/Error.pod (original)
+++ perl/modperl/docs/trunk/src/docs/2.0/api/APR/Error.pod Tue Apr 19 22:14:07 2005
@@ -132,6 +132,12 @@
outside mod_perl as well, when called from
C<L<APR|docs::2.0::api::APR>> applications written in Perl.
+It is worth noting that APR provides some macros in F<apr_errno.h>,
+C<APR_STATUS_IS_*>, which are the recommended way to check for
+some error conditions, especially in cases when different
+circumstances can lead to the intent of a single condition.
+See the L<APR::Status documentation|docs::2.0::api::APR::Status>
+for an interface to some of these macros.
=head1 API
Added: perl/modperl/docs/trunk/src/docs/2.0/api/APR/Status.pod
URL: http://svn.apache.org/viewcvs/perl/modperl/docs/trunk/src/docs/2.0/api/APR/Status.pod?view=auto&rev=162015
==============================================================================
--- perl/modperl/docs/trunk/src/docs/2.0/api/APR/Status.pod (added)
+++ perl/modperl/docs/trunk/src/docs/2.0/api/APR/Status.pod Tue Apr 19 22:14:07 2005
@@ -0,0 +1,78 @@
+=head1 NAME
+
+APR::Status - Perl Interface to the APR_STATUS_IS_* macros
+
+
+
+=head1 Synopsis
+
+ use APR::Status ();
+ eval { $obj->mp_method() };
+ if ($@ && $ref $@ eq 'APR::Error' && APR::Status::is_EAGAIN($@)) {
+ # APR_STATUS_IS_EAGAIN(s) of apr_errno.h is satisfied
+ }
+
+
+=head1 Description
+
+As discussed in the
+L<APR::Error documentation|docs::2.0::api::APR::Error>,
+it is possible to handle APR/Apache/mod_perl exceptions
+in the following way:
+
+ eval { $obj->mp_method() };
+ if ($@ && $ref $@ eq 'APR::Error' && $@ == $some_code)
+ warn "handled exception: $@";
+ }
+
+However, in cases where C<$some_code> is an
+L<APR::Const constant|docs::2.0::api::APR::Const>,
+there may be more than one condition satisfying the
+intent of this exception. For this purpose the APR C
+library provides in F<apr_errno.h> a series of macros,
+C<APR_STATUS_IS_*>, which are the recommended way to check
+for such conditions. For example, the C<APR_STATUS_IS_EAGAIN>
+macro is defined as
+
+ #define APR_STATUS_IS_EAGAIN(s) ((s) == APR_EAGAIN \
+ || (s) == APR_OS_START_SYSERR + ERROR_NO_DATA \
+ || (s) == APR_OS_START_SYSERR + SOCEWOULDBLOCK \
+ || (s) == APR_OS_START_SYSERR + ERROR_LOCK_VIOLATION)
+
+The purpose of C<APR::Status> is to provide functions corresponding
+to these macros.
+
+
+=head1 Functions
+
+
+
+=head2 C<is_EAGAIN>
+
+ use APR::Status ();
+ # ....
+ if ($@ && $ref $@ eq 'APR::Error' && APR::Status::is_EAGAIN($@)) {
+ # APR_STATUS_IS_EAGAIN(s) of apr_errno.h is satisfied
+ }
+
+This corresponds to the C<APR_STATUS_IS_EAGAIN> macro.
+
+
+=head1 See Also
+
+L<mod_perl 2.0 documentation|docs::2.0::index>.
+
+
+=head1 Copyright
+
+mod_perl 2.0 and its core modules are copyrighted under
+The Apache Software License, Version 2.0.
+
+
+
+=head1 Authors
+
+L<The mod_perl development team and numerous
+contributors|about::contributors::people>.
+
+=cut
Propchange: perl/modperl/docs/trunk/src/docs/2.0/api/APR/Status.pod
------------------------------------------------------------------------------
svn:eol-style = native
Modified: perl/modperl/docs/trunk/src/docs/2.0/api/config.cfg
URL: http://svn.apache.org/viewcvs/perl/modperl/docs/trunk/src/docs/2.0/api/config.cfg?view=diff&r1=162014&r2=162015
==============================================================================
--- perl/modperl/docs/trunk/src/docs/2.0/api/config.cfg (original)
+++ perl/modperl/docs/trunk/src/docs/2.0/api/config.cfg Tue Apr 19 22:14:07 2005
@@ -60,6 +60,7 @@
APR/Pool.pod
APR/SockAddr.pod
APR/Socket.pod
+ APR/Status.pod
APR/String.pod
APR/Table.pod
APR/ThreadMutex.pod
---------------------------------------------------------------------
To unsubscribe, e-mail: docs-cvs-unsubscribe@perl.apache.org
For additional commands, e-mail: docs-cvs-help@perl.apache.org