File Coverage

blib/lib/Verilog/Netlist/ContAssign.pm
Criterion Covered Total %
statement 19 27 70.3
branch 1 2 50.0
condition 1 2 50.0
subroutine 7 11 63.6
pod 3 7 42.8
total 31 49 63.2


line stmt bran cond sub pod time code
1             # Verilog - Verilog Perl Interface
2             # See copyright, etc in below POD section.
3             ######################################################################
4              
5             package Verilog::Netlist::ContAssign;
6              
7 8     8   61 use Verilog::Netlist;
  8         17  
  8         236  
8 8     8   41 use Verilog::Netlist::Subclass;
  8         15  
  8         382  
9 8     8   59 use vars qw($VERSION @ISA);
  8         19  
  8         445  
10 8     8   47 use strict;
  8         16  
  8         2735  
11             @ISA = qw(Verilog::Netlist::ContAssign::Struct
12             Verilog::Netlist::Subclass);
13              
14             $VERSION = '3.478';
15              
16             structs('new',
17             'Verilog::Netlist::ContAssign::Struct'
18             =>[name => '$', #' # Unique ID
19             keyword => '$', #' # Keyword name
20             filename => '$', #' # Filename this came from
21             lineno => '$', #' # Linenumber this came from
22             userdata => '%', # User information
23             attributes => '%', #' # Misc attributes for systemperl or other processors
24             #
25             lhs => '$', #' # Left hand side of assignment
26             rhs => '$', #' # Right hand side of assignment
27             module => '$', #' # Module reference
28             ]);
29              
30             sub delete {
31 0     0 0 0 my $self = shift;
32 0         0 my $h = $self->module->_statements;
33 0         0 delete $h->{$self->name};
34 0         0 return undef;
35             }
36              
37             ######################################################################
38             #### Methods
39              
40             sub logger {
41 0     0 1 0 my $self = shift;
42 0         0 return $self->netlist->logger;
43             }
44             sub netlist {
45 0     0 1 0 my $self = shift;
46 0         0 return $self->module->netlist;
47             }
48              
49       5 0   sub lint {}
50       0 0   sub link {}
51              
52             sub verilog_text {
53 6     6 0 9 my $self = shift;
54 6         89 my @out = ($self->keyword," ",$self->lhs," = ",$self->rhs,";");
55 6 50       30 return (wantarray ? @out : join('',@out));
56             }
57              
58             sub dump {
59 5     5 1 10 my $self = shift;
60 5   50     15 my $indent = shift||0;
61 5         104 print " "x$indent,"ContAssign:",$self->keyword," lhs:",$self->lhs," rhs:",$self->rhs;
62 5         68 print "\n";
63             }
64              
65             ######################################################################
66             #### Package return
67             1;
68             __END__