+ * 'unix'
+
+ Covers typical Unix shell globbing features (effectively 'jokers'
+ and 'brackets').
+
+ * $^O values for common Unix systems
+
+ Wrap to 'unix' (see perlport for the list).
+
+ * "undef"
+
+ Defaults to 'unix'.
+
+ * 'win32'
+
+ Covers typical Windows shell globbing features (effectively 'jokers'
+ and 'commas').
+
+ * 'dos', 'os2', 'MSWin32', 'cygwin'
+
+ Wrap to 'win32'.
+
+ In particular, you can usually pass $^O as the $type and get the
+ corresponding shell behaviour.
+
+ $rw->type('win32'); # Set type to win32.
+ $rw->type($^O); # Set type to unix on Unices and win32 on Windows
+ $rw->type(); # Set type to unix.
+
+ The "type" method returns the Regexp::Wildcards object.
+
+ "capture"
+ $rw->capture($captures);
+ $rw->capture(set => $c1);
+ $rw->capture(add => $c2);
+ $rw->capture(rem => $c3);
+
+ Specifies the list of atoms to capture. This method works like "do",
+ except that the classes are different :
+
+ * 'single'
+
+ Captures all unescaped *"exactly one"* metacharacters, i.e. "?" for
+ wildcards or "_" for SQL.
+
+ 'a???b\\??' ==> 'a(.)(.)(.)b\\?(.)'
+ 'a___b\\__' ==> 'a(.)(.)(.)b\\_(.)'
+
+ * 'any'
+
+ Captures all unescaped *"any"* metacharacters, i.e. "*" for
+ wildcards or "%" for SQL.
+
+ 'a***b\\**' ==> 'a(.*)b\\*(.*)'
+ 'a%%%b\\%%' ==> 'a(.*)b\\%(.*)'
+
+ * 'greedy'
+
+ When used in conjunction with 'any', it makes the 'any' captures
+ greedy (by default they are not).
+
+ 'a***b\\**' ==> 'a(.*?)b\\*(.*?)'
+ 'a%%%b\\%%' ==> 'a(.*?)b\\%(.*?)'
+
+ * 'brackets'
+
+ Capture matching "{ ... , ... }" alternations.
+
+ 'a{b\\},\\{c}' ==> 'a(b\\}|\\{c)'
+
+ $rw->capture(set => 'single'); # Only capture "exactly one"
+ # metacharacters.
+ $rw->capture('single'); # Same.
+ $rw->capture(add => [ qw<any greedy> ]); # Also greedily capture
+ # "any" metacharacters.
+ $rw->capture(rem => 'greedy'); # No more greed please.
+ $rw->capture(); # Capture nothing.
+
+ The "capture" method returns the Regexp::Wildcards object.
+
+ "convert"
+ my $rx = $rw->convert($wc);
+ my $rx = $rw->convert($wc, $type);
+
+ Converts the wildcard expression $wc into a regular expression according
+ to the options stored into the Regexp::Wildcards object, or to $type if
+ it's supplied. It successively escapes all unprotected regexp special
+ characters that doesn't hold any meaning for wildcards, then replace
+ 'jokers', 'sql' and 'commas' or 'brackets' (depending on the "do" or
+ "type" options), all of this by applying the 'capture' rules specified
+ in the constructor or by "capture".
+
+EXPORT
+ An object module shouldn't export any function, and so does this one.
+
+DEPENDENCIES
+ Carp (core module since perl 5), Scalar::Util, Text::Balanced (since
+ 5.7.3).
+
+CAVEATS
+ This module does not implement the strange behaviours of Windows shell
+ that result from the special handling of the three last characters (for
+ the file extension). For example, Windows XP shell matches *a like
+ ".*a", "*a?" like ".*a.?", "*a??" like ".*a.{0,2}" and so on.
+
+SEE ALSO
+ Text::Glob.