The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
<?xml version="1.0" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>IO::Moose - Reimplementation of IO::* with improvements</title>
<link rel="stylesheet" href="../../../Active.css" type="text/css" />
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<link rev="made" href="mailto:support@ActiveState.com" />
</head>

<body>
<table border="0" width="100%" cellspacing="0" cellpadding="3">
<tr><td class="block" valign="middle">
<big><strong><span class="block">&nbsp;IO::Moose - Reimplementation of IO::* with improvements</span></strong></big>
</td></tr>
</table>


<!-- INDEX BEGIN -->
<div name="index">
<p><a name="__index__"></a></p>

<ul>

	<li><a href="#name">NAME</a></li>
	<li><a href="#synopsis">SYNOPSIS</a></li>
	<li><a href="#description">DESCRIPTION</a></li>
	<li><a href="#imports">IMPORTS</a></li>
	<li><a href="#see_also">SEE ALSO</a></li>
	<li><a href="#bugs">BUGS</a></li>
	<li><a href="#author">AUTHOR</a></li>
	<li><a href="#license">LICENSE</a></li>
</ul>

<hr name="index" />
</div>
<!-- INDEX END -->

<p>
</p>
<h1><a name="name">NAME</a></h1>
<p>IO::Moose - Reimplementation of IO::* with improvements</p>
<p>
<a href="#__index__"><small>Back to Top</small></a>
</p>
<hr />
<h1><a name="synopsis">SYNOPSIS</a></h1>
<pre>
  <span class="keyword">use</span> <span class="variable">IO::Moose</span> <span class="string">'Handle'</span><span class="operator">,</span> <span class="string">'File'</span><span class="operator">;</span>  <span class="comment"># loads IO::Moose::* modules</span>
</pre>
<pre>
  <span class="variable">$passwd</span> <span class="operator">=</span> <span class="variable">IO::Moose::File</span><span class="operator">-&gt;</span><span class="variable">new</span><span class="operator">(</span> <span class="string">file</span> <span class="operator">=&gt;</span> <span class="string">'/etc/passwd'</span> <span class="operator">)-&gt;</span><span class="variable">slurp</span><span class="operator">;</span>
</pre>
<p>
<a href="#__index__"><small>Back to Top</small></a>
</p>
<hr />
<h1><a name="description">DESCRIPTION</a></h1>
<p><code>IO::Moose</code> provides a simple mechanism to load several modules in one go.</p>
<p><code>IO::Moose::*</code> classes provide an interface mostly compatible with <em>IO</em>.
The differences:</p>
<ul>
<li>
<p>It is based on <a href="../../../site/lib/IO/Moose.html">the Moose manpage</a> object framework.</p>
</li>
<li>
<p>It uses <a href="../../../site/Exception/Base.html">the Exception::Base manpage</a> for signaling errors. Most of methods are throwing
exception on failure.</p>
</li>
<li>
<p>The modifiers like <code>input_record_separator</code> are supported on per file handler
basis.</p>
</li>
<li>
<p>It also implements additional methods like <code>say</code>, <code>slurp</code>.</p>
</li>
</ul>
<p>
<a href="#__index__"><small>Back to Top</small></a>
</p>
<hr />
<h1><a name="imports">IMPORTS</a></h1>
<dl>
<dt><strong><a name="use_io_moose_modules" class="item">use IO::Moose [<em>modules</em>]</a></strong></dt>

<dd>
<p>Loads a modules from <code>IO::Moose::*</code> hierarchy.  I.e. <code>Handle</code> parameter
loads <a href="#io_moose_handle"><code>IO::Moose::Handle</code></a> module.</p>
<pre>
  <span class="keyword">use</span> <span class="variable">IO::Moose</span> <span class="string">'Handle'</span><span class="operator">,</span> <span class="string">'File'</span><span class="operator">;</span>  <span class="comment"># loads IO::Moose::Handle and ::File.</span>
</pre>
<p>If <em>modules</em> list is empty, it loads following modules at default:</p>
<ul>
<li><strong><a name="io_moose_handle" class="item"><a href="../../../site/lib/IO/Moose/Handle.html">the IO::Moose::Handle manpage</a></a></strong>

</li>
<li><strong><a name="io_moose_file" class="item"><a href="../../../site/lib/IO/Moose/File.html">the IO::Moose::File manpage</a></a></strong>

</li>
</ul>
</dd>
</dl>
<p>
<a href="#__index__"><small>Back to Top</small></a>
</p>
<hr />
<h1><a name="see_also">SEE ALSO</a></h1>
<p><em>IO</em>, <a href="../../../site/lib/IO/Moose.html">the Moose manpage</a>.</p>
<p>
<a href="#__index__"><small>Back to Top</small></a>
</p>
<hr />
<h1><a name="bugs">BUGS</a></h1>
<p>The API is not stable yet and can be changed in future.</p>
<p>
<a href="#__index__"><small>Back to Top</small></a>
</p>
<hr />
<h1><a name="author">AUTHOR</a></h1>
<p>Piotr Roszatycki &lt;<a href="mailto:dexter@cpan.org">dexter@cpan.org</a>&gt;</p>
<p>
<a href="#__index__"><small>Back to Top</small></a>
</p>
<hr />
<h1><a name="license">LICENSE</a></h1>
<p>Copyright 2008, 2009 by Piotr Roszatycki &lt;<a href="mailto:dexter@cpan.org">dexter@cpan.org</a>&gt;.</p>
<p>This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.</p>
<p>See <a href="http://www.perl.com/perl/misc/Artistic.html">http://www.perl.com/perl/misc/Artistic.html</a></p>
<p><a href="#__index__"><small>Back to Top</small></a></p>
<table border="0" width="100%" cellspacing="0" cellpadding="3">
<tr><td class="block" valign="middle">
<big><strong><span class="block">&nbsp;IO::Moose - Reimplementation of IO::* with improvements</span></strong></big>
</td></tr>
</table>

</body>

</html>