Condition Coverage

blib/lib/Parse/Method/Signatures.pm
Criterion Covered Total %
condition 69 80 86.2


and 2 conditions

line l !l condition
350 2 8 $err_ctx == $self->ppi and return

and 3 conditions

line !l l&&!r l&&r condition
211 2 1 0 $next->isa('PPI::Token::Word') and $next->content =~ /^[0-9a-f]+$/i
223 134 12 1 $ppi->class eq 'PPI::Token::Word' and exists $LEXTABLE{"$ppi"}
252 6 89 13 $param and $self->ppi->content eq ':'
286 3 22 1 $param->required and $opt_pos_param
403 206 9 13 $self->ppi->isa('PPI::Token::LexSymbol') and $self->ppi->lex eq 'WHERE'
412 0 1 12 $ppi->class eq 'PPI::Token::Structure' and $ppi->content eq '{'
431 206 0 9 $self->ppi->isa('PPI::Token::LexSymbol') and $self->ppi->lex eq 'TRAIT'
449 167 49 14 $self->ppi->content eq ':' and $self->ppi->next_token->isa('PPI::Token::Word')
482 167 4 45 $self->ppi->content eq ':' and $self->ppi->next_token->isa('PPI::Token::Symbol')
574 8 11 1 $p->sigil eq '$' and PositionalParam()->check($p)
618 201 2 0 $required and $self->error($self->ppi)
808 729 82 22 $ppi->class eq 'PPI::Token::Word' and exists $LEXTABLE{"$ppi"}

or 2 conditions

line l !l condition
408 2 11 $param->{'constraints'} ||= []
439 2 6 $param->{'param_traits'} ||= []
730 19 0 shift() || 0

or 3 conditions

line l !l&&r !l&&!r condition
262 0 3 7 UnpackedParam()->check($param) or $param->sigil ne '$'
298 9 7 20 $opt_pos_param || !$param->required
350 188 24 0 $self->_param_labeled($param) || $self->_param_named($param) || $self->_param_variable($param) || $self->_unpacked_param($param)
209 0 10 $self->_param_opt_or_req($self->_param_labeled($param) || $self->_param_named($param) || $self->_param_variable($param) || $self->_unpacked_param($param)) or $err_ctx == $self->ppi and return
392 11 8 207 $self->_param_where($param) or $self->_param_traits($param)
462 4 5 1 $self->_unpacked_param($param) or $self->_param_variable($param)
474 8 20 6 $self->bracketed('[', \&Parse::Method::Signatures::unpacked_array, $param) || $self->bracketed('{', \&Parse::Method::Signatures::unpacked_hash, $param)
529 24 1 0 $self->_consume_if_isa('PPI::Token::QuoteLike', 'PPI::Token::Number', 'PPI::Token::Quote', 'PPI::Token::Symbol', 'PPI::Token::Magic', 'PPI::Token::ArrayIndex') || $self->bracketed('[') || $self->bracketed('{')
550 187 10 25 $class eq 'PPI::Token::Symbol' or $class eq 'PPI::Token::Cast'
618 64 0 203 $ident or $required and $self->error($self->ppi)
620 13 48 0 $self->bracketed('[', \&Parse::Method::Signatures::_tc_params, $ident) || $ident->clone
655 1 1 12 $class eq 'Token::Number' or $class =~ /^Token::Quote::(?:Single|Double|Literal|Interpolate)/