Add ARM files
[dh-make-perl] / dev / arm / libdevel-symdump-perl / libdevel-symdump-perl-2.08 / README
diff --git a/dev/arm/libdevel-symdump-perl/libdevel-symdump-perl-2.08/README b/dev/arm/libdevel-symdump-perl/libdevel-symdump-perl-2.08/README
new file mode 100644 (file)
index 0000000..6f89aa2
--- /dev/null
@@ -0,0 +1,140 @@
+NAME
+    Devel::Symdump - dump symbol names or the symbol table
+
+SYNOPSIS
+        # Constructor
+        require Devel::Symdump;
+        @packs = qw(some_package another_package);
+        $obj = Devel::Symdump->new(@packs);        # no recursion
+        $obj = Devel::Symdump->rnew(@packs);       # with recursion
+
+        # Methods
+        @array = $obj->packages;
+        @array = $obj->scalars;
+        @array = $obj->arrays;
+        @array = $obj->hashes;
+        @array = $obj->functions;
+        @array = $obj->filehandles;  # deprecated, use ios instead
+        @array = $obj->dirhandles;   # deprecated, use ios instead
+        @array = $obj->ios;
+        @array = $obj->unknowns;     # only perl version < 5.003 had some
+
+        $string = $obj->as_string;
+        $string = $obj->as_HTML;
+        $string = $obj1->diff($obj2);
+
+        $string = Devel::Symdump->isa_tree;    # or $obj->isa_tree
+        $string = Devel::Symdump->inh_tree;    # or $obj->inh_tree
+
+        # Methods with autogenerated objects
+        # all of those call new(@packs) internally
+        @array = Devel::Symdump->packages(@packs);
+        @array = Devel::Symdump->scalars(@packs);
+        @array = Devel::Symdump->arrays(@packs);
+        @array = Devel::Symdump->hashes(@packs);
+        @array = Devel::Symdump->functions(@packs);
+        @array = Devel::Symdump->ios(@packs);
+        @array = Devel::Symdump->unknowns(@packs);
+
+DESCRIPTION
+    This little package serves to access the symbol table of perl.
+
+    "Devel::Symdump->rnew(@packages)"
+        returns a symbol table object for all subtrees below @packages.
+        Nested Modules are analyzed recursively. If no package is given as
+        argument, it defaults to "main". That means to get the whole symbol
+        table, just do a "rnew" without arguments.
+
+        The global variable $Devel::Symdump::MAX_RECURSION limits the
+        recursion to prevent contention. The default value is set to 97,
+        just low enough to survive the test suite without a warning about
+        deep recursion.
+
+    "Devel::Symdump->new(@packages)"
+        does not go into recursion and only analyzes the packages that are
+        given as arguments.
+
+    packages, scalars, arrays, hashes, functions, ios
+        The methods packages(), scalars(), arrays(), hashes(), functions(),
+        ios(), and (for older perls) unknowns() each return an array of
+        fully qualified symbols of the specified type in all packages that
+        are held within a Devel::Symdump object, but without the leading
+        "$", "@" or "%". In a scalar context, they will return the number of
+        such symbols. Unknown symbols are usually either formats or
+        variables that haven't yet got a defined value.
+
+    as_string
+    as_HTML
+        As_string() and as_HTML() return a simple string/HTML
+        representations of the object.
+
+    diff
+        Diff() prints the difference between two Devel::Symdump objects in
+        human readable form. The format is similar to the one used by the
+        as_string method.
+
+    isa_tree
+    inh_tree
+        Isa_tree() and inh_tree() both return a simple string representation
+        of the current inheritance tree. The difference between the two
+        methods is the direction from which the tree is viewed: top-down or
+        bottom-up. As I'm sure, many users will have different expectation
+        about what is top and what is bottom, I'll provide an example what
+        happens when the Socket module is loaded:
+
+    % print Devel::Symdump->inh_tree
+            AutoLoader
+                    DynaLoader
+                            Socket
+            DynaLoader
+                    Socket
+            Exporter
+                    Carp
+                    Config
+                    Socket
+
+        The inh_tree method shows on the left hand side a package name and
+        indented to the right the packages that use the former.
+
+    % print Devel::Symdump->isa_tree
+            Carp
+                    Exporter
+            Config
+                    Exporter
+            DynaLoader
+                    AutoLoader
+            Socket
+                    Exporter
+                    DynaLoader
+                            AutoLoader
+
+        The isa_tree method displays from left to right ISA relationships,
+        so Socket IS A DynaLoader and DynaLoader IS A AutoLoader. (Actually,
+        they were at the time this manpage was written)
+
+    You may call both methods, isa_tree() and inh_tree(), with an object. If
+    you do that, the object will store the output and retrieve it when you
+    call the same method again later. The typical usage would be to use them
+    as class methods directly though.
+
+SUBCLASSING
+    The design of this package is intentionally primitive and allows it to
+    be subclassed easily. An example of a (maybe) useful subclass is
+    Devel::Symdump::Export, a package which exports all methods of the
+    Devel::Symdump package and turns them into functions.
+
+AUTHORS
+    Andreas Koenig <andk@cpan.org> and Tom Christiansen <tchrist@perl.com>.
+    Based on the old dumpvar.pl by Larry Wall.
+
+COPYRIGHT, LICENSE
+    This module is
+
+    Copyright (c) 1995, 1997, 2000, 2002, 2005, 2006 Andreas Koenig
+    "<andk@cpan.org>".
+
+    All rights reserved.
+
+    This library is free software; you may use, redistribute and/or modify
+    it under the same terms as Perl itself.
+