1Devel::Declare::InterfaUcsee(r3)Contributed Perl DocumenDteavteilo:n:Declare::Interface(3)
2
3
4
6 Devel::Declare::Interface - Interface to Devel-Declare parsers.
7
9 A higher level interface to Devel-Declare. This is the package you will
10 interact with the most when using Devel::Declare::Parser.
11
13 package My::Keyword::Method;
14 use strict;
15 use warnings;
16
17 use Devel::Declare::Parser;
18
19 # Look at Exporter-Declare to have most of this done for you.
20 sub import {
21 my $class = shift;
22 my $destination = caller;
23
24 enhance( $destination, "make_method", "method" );
25 no strict 'refs';
26 *{ $destination . '::make_method' } = \&my_keyword;
27 }
28
29 sub make_method {
30 my ( $name, $code ) = @_;
31 my $dest = caller;
32 no strict 'refs';
33 *{ $destination . '::' . $name } = $code;
34 }
35
36 1;
37
39 The following functions are all exported by default.
40
41 register_parser( $name )
42 register_parser( $name, $class )
43 Register a parser under a short name. If $class is not provided
44 caller will be used.
45
46 get_parser( $name );
47 Get the parser class by short name.
48
49 enhance( $dest_class, $name, $parser );
50 enhance( $dest_class, $name, $parser, $type );
51 Make $name a keyword in $dest_class that uses $parser. $parser can
52 be a short name or class name. $type defaults to 'const'.
53
55 This module is part of the Fennec project. See Fennec for more details.
56 Fennec is a project to develop an extendable and powerful testing
57 framework. Together the tools that make up the Fennec framework
58 provide a potent testing environment.
59
60 The tools provided by Fennec are also useful on their own. Sometimes a
61 tool created for Fennec is useful outside the greator framework. Such
62 tools are turned into their own projects. This is one such project.
63
64 Fennec - The core framework
65 The primary Fennec project that ties them all together.
66
68 Chad Granum exodist7@gmail.com
69
71 Copyright (C) 2010 Chad Granum
72
73 Devel-Declare-Interface is free software; Standard perl licence.
74
75 Devel-Declare-Parser is distributed in the hope that it will be useful,
76 but WITHOUT ANY WARRANTY; without even the implied warranty of
77 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the license
78 for more details.
79
81 Hey! The above document had some coding errors, which are explained
82 below:
83
84 Around line 110:
85 '=item' outside of any '=over'
86
87
88
89perl v5.36.0 2023-01-20 Devel::Declare::Interface(3)