File Coverage

blib/lib/Treex/PML/Schema/Attribute.pm
Criterion Covered Total %
statement 25 29 86.2
branch n/a
condition n/a
subroutine 11 15 73.3
pod 7 7 100.0
total 43 51 84.3


line stmt bran cond sub pod time code
1             package Treex::PML::Schema::Attribute;
2              
3 8     8   54 use strict;
  8         13  
  8         289  
4 8     8   40 use warnings;
  8         15  
  8         495  
5              
6 8     8   45 use vars qw($VERSION);
  8         13  
  8         390  
7             BEGIN {
8 8     8   204 $VERSION='2.28'; # version template
9             }
10 8     8   65 no warnings 'uninitialized';
  8         17  
  8         424  
11 8     8   45 use Carp;
  8         19  
  8         547  
12              
13 8     8   50 use Treex::PML::Schema::Constants;
  8         11  
  8         979  
14 8     8   46 use base qw( Treex::PML::Schema::Decl );
  8         16  
  8         2628  
15              
16             =head1 NAME
17              
18             Treex::PML::Schema::Attribute - implements declaration of an attribute
19             of a container.
20              
21             =head1 INHERITANCE
22              
23             This class inherits from L.
24              
25             =head1 METHODS
26              
27             See the super-class for the complete list.
28              
29             =over 3
30              
31             =item $decl->get_decl_type ()
32              
33             Returns the constant PML_ATTRIBUTE_DECL.
34              
35             =item $decl->get_decl_type_str ()
36              
37             Returns the string 'attribute'.
38              
39             =item $decl->get_name ()
40              
41             Return name of the attribute.
42              
43             =item $decl->is_required ()
44              
45             Return 1 if the attribute is required, 0 otherwise.
46              
47             =item $decl->is_attribute ()
48              
49             Return 1 (for compatibility with C).
50              
51             =item $decl->get_parent_container ()
52              
53             Return the container declaration the attribute belongs to.
54              
55             =item $decl->get_parent_struct ()
56              
57             Alias for C for compatibility with
58             C.
59              
60             =back
61              
62             =cut
63              
64              
65 0     0 1 0 sub is_atomic { undef }
66 359     359 1 607 sub get_decl_type { return PML_ATTRIBUTE_DECL; }
67 0     0 1 0 sub get_decl_type_str { return 'attribute'; }
68 253     253 1 806 sub get_name { return $_[0]->{-name}; }
69 63     63 1 225 sub is_required { return $_[0]->{required}; }
70 0     0 1   sub is_attribute { return 1; }
71             *get_parent_container = \&Treex::PML::Schema::Decl::get_parent_decl;
72             *get_parent_struct = \&Treex::PML::Schema::Decl::get_parent_decl; # compatibility with members
73              
74             sub validate_object {
75 0     0 1   shift->get_content_decl->validate_object(@_);
76             }
77              
78              
79              
80             1;
81             __END__