warnings.html
来自「perl教程」· HTML 代码 · 共 197 行
HTML
197 行
<?xml version="1.0" ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<!-- saved from url=(0017)http://localhost/ -->
<script language="JavaScript" src="../displayToc.js"></script>
<script language="JavaScript" src="../tocParas.js"></script>
<script language="JavaScript" src="../tocTab.js"></script>
<link rel="stylesheet" type="text/css" href="../scineplex.css">
<title>warnings - Perl pragma to control optional warnings</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:" />
</head>
<body>
<script>writelinks('__top__',1);</script>
<h1><a>warnings - Perl pragma to control optional warnings</a></h1>
<p><a name="__index__"></a></p>
<!-- INDEX BEGIN -->
<ul>
<li><a href="#name">NAME</a></li>
<li><a href="#synopsis">SYNOPSIS</a></li>
<li><a href="#description">DESCRIPTION</a></li>
</ul>
<!-- INDEX END -->
<hr />
<p>
</p>
<h1><a name="name">NAME</a></h1>
<p>warnings - Perl pragma to control optional warnings</p>
<p>
</p>
<hr />
<h1><a name="synopsis">SYNOPSIS</a></h1>
<pre>
<span class="keyword">use</span> <span class="variable">warnings</span><span class="operator">;</span>
<span class="keyword">no</span> <span class="variable">warnings</span><span class="operator">;</span>
</pre>
<pre>
<span class="keyword">use</span> <span class="variable">warnings</span> <span class="string">"all"</span><span class="operator">;</span>
<span class="keyword">no</span> <span class="variable">warnings</span> <span class="string">"all"</span><span class="operator">;</span>
</pre>
<pre>
<span class="keyword">use</span> <span class="variable">warnings::register</span><span class="operator">;</span>
<span class="keyword">if</span> <span class="operator">(</span><span class="variable">warnings::enabled</span><span class="operator">())</span> <span class="operator">{</span>
<span class="variable">warnings::warn</span><span class="operator">(</span><span class="string">"some warning"</span><span class="operator">);</span>
<span class="operator">}</span>
</pre>
<pre>
<span class="keyword">if</span> <span class="operator">(</span><span class="variable">warnings::enabled</span><span class="operator">(</span><span class="string">"void"</span><span class="operator">))</span> <span class="operator">{</span>
<span class="variable">warnings::warn</span><span class="operator">(</span><span class="string">"void"</span><span class="operator">,</span> <span class="string">"some warning"</span><span class="operator">);</span>
<span class="operator">}</span>
</pre>
<pre>
<span class="keyword">if</span> <span class="operator">(</span><span class="variable">warnings::enabled</span><span class="operator">(</span><span class="variable">$object</span><span class="operator">))</span> <span class="operator">{</span>
<span class="variable">warnings::warn</span><span class="operator">(</span><span class="variable">$object</span><span class="operator">,</span> <span class="string">"some warning"</span><span class="operator">);</span>
<span class="operator">}</span>
</pre>
<pre>
<span class="variable">warnings::warnif</span><span class="operator">(</span><span class="string">"some warning"</span><span class="operator">);</span>
<span class="variable">warnings::warnif</span><span class="operator">(</span><span class="string">"void"</span><span class="operator">,</span> <span class="string">"some warning"</span><span class="operator">);</span>
<span class="variable">warnings::warnif</span><span class="operator">(</span><span class="variable">$object</span><span class="operator">,</span> <span class="string">"some warning"</span><span class="operator">);</span>
</pre>
<p>
</p>
<hr />
<h1><a name="description">DESCRIPTION</a></h1>
<p>The <code>warnings</code> pragma is a replacement for the command line flag <a href="../lib/Pod/perlrun.html#item__2dw"><code>-w</code></a>,
but the pragma is limited to the enclosing block, while the flag is global.
See <a href="../lib/Pod/perllexwarn.html">the perllexwarn manpage</a> for more information.</p>
<p>If no import list is supplied, all possible warnings are either enabled
or disabled.</p>
<p>A number of functions are provided to assist module authors.</p>
<dl>
<dt><strong><a name="item_use_warnings_3a_3aregister">use warnings::register</a></strong>
<dd>
<p>Creates a new warnings category with the same name as the package where
the call to the pragma is used.</p>
</dd>
</li>
<dt><strong><a name="item_enabled">warnings::enabled()</a></strong>
<dd>
<p>Use the warnings category with the same name as the current package.</p>
</dd>
<dd>
<p>Return TRUE if that warnings category is enabled in the calling module.
Otherwise returns FALSE.</p>
</dd>
</li>
<dt><strong>warnings::enabled($category)</strong>
<dd>
<p>Return TRUE if the warnings category, <code>$category</code>, is enabled in the
calling module.
Otherwise returns FALSE.</p>
</dd>
</li>
<dt><strong>warnings::enabled($object)</strong>
<dd>
<p>Use the name of the class for the object reference, <code>$object</code>, as the
warnings category.</p>
</dd>
<dd>
<p>Return TRUE if that warnings category is enabled in the first scope
where the object is used.
Otherwise returns FALSE.</p>
</dd>
</li>
<dt><strong><a name="item_warn">warnings::warn($message)</a></strong>
<dd>
<p>Print <code>$message</code> to STDERR.</p>
</dd>
<dd>
<p>Use the warnings category with the same name as the current package.</p>
</dd>
<dd>
<p>If that warnings category has been set to "FATAL" in the calling module
then die. Otherwise return.</p>
</dd>
</li>
<dt><strong>warnings::warn($category, $message)</strong>
<dd>
<p>Print <code>$message</code> to STDERR.</p>
</dd>
<dd>
<p>If the warnings category, <code>$category</code>, has been set to "FATAL" in the
calling module then die. Otherwise return.</p>
</dd>
</li>
<dt><strong>warnings::warn($object, $message)</strong>
<dd>
<p>Print <code>$message</code> to STDERR.</p>
</dd>
<dd>
<p>Use the name of the class for the object reference, <code>$object</code>, as the
warnings category.</p>
</dd>
<dd>
<p>If that warnings category has been set to "FATAL" in the scope where <code>$object</code>
is first used then die. Otherwise return.</p>
</dd>
</li>
<dt><strong><a name="item_warnif">warnings::warnif($message)</a></strong>
<dd>
<p>Equivalent to:</p>
</dd>
<dd>
<pre>
<span class="keyword">if</span> <span class="operator">(</span><span class="variable">warnings::enabled</span><span class="operator">())</span>
<span class="operator">{</span> <span class="variable">warnings::warn</span><span class="operator">(</span><span class="variable">$message</span><span class="operator">)</span> <span class="operator">}</span>
</pre>
</dd>
</li>
<dt><strong>warnings::warnif($category, $message)</strong>
<dd>
<p>Equivalent to:</p>
</dd>
<dd>
<pre>
<span class="keyword">if</span> <span class="operator">(</span><span class="variable">warnings::enabled</span><span class="operator">(</span><span class="variable">$category</span><span class="operator">))</span>
<span class="operator">{</span> <span class="variable">warnings::warn</span><span class="operator">(</span><span class="variable">$category</span><span class="operator">,</span> <span class="variable">$message</span><span class="operator">)</span> <span class="operator">}</span>
</pre>
</dd>
</li>
<dt><strong>warnings::warnif($object, $message)</strong>
<dd>
<p>Equivalent to:</p>
</dd>
<dd>
<pre>
<span class="keyword">if</span> <span class="operator">(</span><span class="variable">warnings::enabled</span><span class="operator">(</span><span class="variable">$object</span><span class="operator">))</span>
<span class="operator">{</span> <span class="variable">warnings::warn</span><span class="operator">(</span><span class="variable">$object</span><span class="operator">,</span> <span class="variable">$message</span><span class="operator">)</span> <span class="operator">}</span>
</pre>
</dd>
</li>
</dl>
<p>See <a href="../lib/Pod/perlmodlib.html#pragmatic_modules">Pragmatic Modules in the perlmodlib manpage</a> and <a href="../lib/Pod/perllexwarn.html">the perllexwarn manpage</a>.</p>
</body>
</html>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?