sub _match(\@$;$$) { my( $args, $sig, $required, $dots ) = @_; my( $argc ) = scalar( @$args );

  if( @_ > 2 ) {
    return if  $dots && $argc < $required;
    return if !$dots && $argc != $required;
  }

  my( $i, $t ) = ( 0 );

  foreach ( @$sig ) {
    last if $i >= $argc;
    next if $_ == $str;
    next if $_ == $bool;

    $t = ${$args}[$i];
    if( $_ == $num ) {
      if( looks_like_number( $t ) ) { next } else { return 0 } }
    next if !defined( $t ) ||
      ( defined( $tnames[$_] ) && UNIVERSAL::isa( $t, $tnames[$_] ) );
    next if ( $_ == $arr ) && ref( $t ) eq 'ARRAY';
    next if ( $_ == $wpoi || $_ == $wsiz ) && ref( $t ) eq 'ARRAY';
    next if ( $_ == $wist || $_ == $wost ) &&
      ( ref( $t ) || ( \$t ) =~ m/^GLOB/ );

    # type clash: return false
    return;
  } continue {
    ++$i;
  }

  return 1;
}

NAME

Wx - interface to the wxWindows GUI toolkit

SYNOPSIS

    use Wx;

DESCRIPTION

The Wx module is a wrapper for the wxWindows GUI toolkit.

This module comes with extensive documentation in HTML format; you can download it at http://wxperl.sourceforge.net/

AUTHOR

Mattia Barbon <mbarbon@dsi.unive.it>