Devel::Cover::Truth_Table - Truth tables for coverage objects.

NAME  VERSION  SYNOPSIS  DESCRIPTION  METHODS  new_primitive($op, @coverage)  sort()  text()  html()  error()  percentage()  right_merge($sub_table)  left_merge($sub_table)  SEE ALSO  BUGS  LICENSE 

NAME

Devel::Cover::Truth_Table − Truth tables for coverage objects.

VERSION

version 1.40

SYNOPSIS

use Devel::Cover::Truth_Table;
# $a || $b
my $or_tt = Devel::Cover::Truth_Table−>new_primitive('or_3', 0, 1, 1);
# $c && $d
my $and_tt = Devel::Cover::Truth_Table−>new_primitive('and_3', 1, 0, 1);
# merge contents of $and_tt into right column of $or_tt, to create
# $a || ($c && $d)
$or_tt−>right_merge($and_tt);
# get a (sorted) textual representation
my @text = $or_tt−>sort−>text;
print "$_\n" foreach @text;
__END__
A B C |exp|hit
−−−−−−−−−−−−−−
0 0 X | 0 |−−−
0 1 0 | 0 |−−−
0 1 1 | 1 |+++
1 X X | 1 |+++
−−−−−−−−−−−−−−

DESCRIPTION

This module provides methods for creating and merging conditional primitives ("$a && $b", "$c || $d", etc.) into more complex composite expressions.

METHODS

new_primitive($op, @coverage)

Create a new truth table based on one of the built-in primitives, which are the subclasses of Devel::Cover::DB::Condition. $op is one of the following:
and_3

"and" or "&&" with three conditional paths.

or_3

"or" or "||" with three conditional paths.

or_2

"or" or "||" with two conditional paths. (i.e., when the right hand side of the expression is a constant)

xor_4

"xor" with four conditional paths.

@coverage is a list booleans identifying which of the possible paths have been covered.

sort()

Sorts a truth table (in place) and returns the sorted object.

text()

Format a truth table to an array of strings for printing.

html()

Format a truth table in HTML.

error()

percentage()

Determines the proportion of possible conditions that have coverage.

right_merge($sub_table)

Merge entries from $sub_table into right column of table.

left_merge($sub_table)

Merge entries from $sub_table into left column of table.

SEE ALSO

Devel::Cover

BUGS

None that I’m aware of...

LICENSE

Copyright 2002 Michael Carman <[email protected]>

This software is free. It is licensed under the same terms as Perl itself. The latest version should be available from: http://www.pjcj.net


Updated 2024-01-29 - jenkler.se | uex.se