summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRichard Jones <rjones@redhat.com>2010-09-02 10:58:28 +0100
committerRichard Jones <rjones@redhat.com>2010-09-02 10:58:28 +0100
commit0f24424f357e854a9da382de11e4fe81305c8743 (patch)
treef9db17719872877f44495f56f5a65e12f9bb0016 /src
parent71f5cc5a2e2db613a99fe6b89278ce435e3a50d0 (diff)
downloadlibguestfs-0f24424f357e854a9da382de11e4fe81305c8743.tar.gz
libguestfs-0f24424f357e854a9da382de11e4fe81305c8743.tar.xz
libguestfs-0f24424f357e854a9da382de11e4fe81305c8743.zip
perl: Add documentation about testing availability of methods and features.
Diffstat (limited to 'src')
-rwxr-xr-xsrc/generator.ml31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/generator.ml b/src/generator.ml
index 743118be..fcac9f83 100755
--- a/src/generator.ml
+++ b/src/generator.ml
@@ -9950,6 +9950,37 @@ the handle.
=back
+=head1 AVAILABILITY
+
+From time to time we add new libguestfs APIs. Also some libguestfs
+APIs won't be available in all builds of libguestfs (the Fedora
+build is full-featured, but other builds may disable features).
+How do you test whether the APIs that your Perl program needs are
+available in the version of C<Sys::Guestfs> that you are using?
+
+To test if a particular function is available in the C<Sys::Guestfs>
+class, use the ordinary Perl UNIVERSAL method C<can(METHOD)>
+(see L<perlobj(1)>). For example:
+
+ use Sys::Guestfs;
+ if (defined (Sys::Guestfs->can (\"set_verbose\"))) {
+ print \"\\$h->set_verbose is available\\n\";
+ }
+
+To test if particular features are supported by the current
+build, use the L</available> method like the example below. Note
+that the appliance must be launched first.
+
+ $h->available ( [\"augeas\"] );
+
+Since the L</available> method croaks if the feature is not supported,
+you might also want to wrap this in an eval and return a boolean.
+In fact this has already been done for you: use
+L<Sys::Guestfs::Lib(3)/feature_available>.
+
+For further discussion on this topic, refer to
+L<guestfs(3)/AVAILABILITY>.
+
=head1 COPYRIGHT
Copyright (C) %s Red Hat Inc.