File Coverage

blib/lib/SQL/OOP/Insert.pm
Criterion Covered Total %
statement 24 24 100.0
branch 1 2 50.0
condition n/a
subroutine 10 10 100.0
pod 6 6 100.0
total 41 42 97.6


line stmt bran cond sub pod time code
1             package SQL::OOP::Insert;
2 3     3   1474 use strict;
  3         6  
  3         80  
3 3     3   15 use warnings;
  3         6  
  3         61  
4 3     3   1562 use SQL::OOP::Dataset;
  3         9  
  3         84  
5 3     3   43 use base qw(SQL::OOP::Command);
  3         5  
  3         1444  
6              
7             sub ARG_TABLE() {1} ## no critic
8             sub ARG_DATASET() {2} ## no critic
9             sub ARG_SELECT() {3} ## no critic
10              
11             ### ---
12             ### Get Names of set arguments in array ref
13             ### ---
14             sub KEYS {
15 46     46 1 170 return [ARG_TABLE, ARG_DATASET, ARG_SELECT];
16             }
17              
18             ### ---
19             ### Get prefixes for each clause in hash ref
20             ### ---
21             sub PREFIXES {
22             return {
23 5     5 1 23 ARG_TABLE() => 'INSERT INTO',
24             ARG_DATASET() => '',
25             ARG_SELECT() => '',
26             }
27             }
28              
29             ### ---
30             ### Constructor
31             ### ---
32             sub new {
33 5     5 1 5925 my ($class, %hash) = @_;
34 5         41 return $class->SUPER::new(%hash);
35             }
36              
37             ### ---
38             ### Set elements
39             ### ---
40             sub set {
41 11     11 1 34 my ($class, %hash) = @_;
42 11         51 return $class->SUPER::set(%hash);
43             }
44              
45             ### ---
46             ### Get SQL snippet
47             ### ---
48             sub to_string {
49 5     5 1 16 my ($self) = @_;
50 5         33 local $SQL::OOP::Base::quote_char = $self->quote_char;
51 5 50       20 if ($self->{array}->[1]) {
52 5         30 $self->{array}->[1]->generate(SQL::OOP::Dataset->MODE_INSERT);
53             }
54 5         32 return shift->SUPER::to_string(@_);
55             }
56              
57             ### ---
58             ### Get binded values in array
59             ### ---
60             sub bind {
61 4     4 1 38 return shift->SUPER::bind(@_);
62             }
63              
64             1;
65              
66             __END__