CWB-CQI

 view release on metacpan or  search on metacpan

lib/CWB/CQI/Client.pm  view on Meta::CPAN

}

sub cqi_read_string () {
  my ($msg, $len);
  $len = cqi_read_word();
  croak "cqi_read_string(): $!"
    unless defined recv $conn, $msg, $len, MSG_WAITALL;
  return $msg;
}

sub cqi_read_byte_list() {
  my ($i, $len, @list);
  $len = cqi_read_int();
  for ($i = $len; $i > 0; $i--) {
    push @list, cqi_read_byte;
  }
  return @list;
}

sub cqi_read_word_list() {
  my ($i, $len, @list);
  $len = cqi_read_int();
  for ($i = $len; $i > 0; $i--) {
    push @list, cqi_read_word();
  }
  return @list;
}

sub cqi_read_int_list() {
  my ($i, $len, @list);
  $len = cqi_read_int();
  for ($i = $len; $i > 0; $i--) {
    push @list, cqi_read_int();
  }
  return @list;
}

sub cqi_read_string_list() {
  my ($i, $len, @list);
  $len = cqi_read_int();
  for ($i = $len; $i > 0; $i--) {
    push @list, cqi_read_string();
  }
  return @list;
}

sub cqi_read_int_table() {
  my $rows = cqi_read_int();
  my $columns = cqi_read_int();
  my @table = ();
  for (my $i = 0; $i < $rows; $i++) {
    my @line = ();
    for (my $j = 0; $j < $columns; $j++) {
      push @line, cqi_read_int();
    }
    push @table, [@line];
  }

lib/CWB/CQI/IOClient.pm  view on Meta::CPAN


sub cqi_read_string () {
  my ($msg, $len, $bytes_read);
  $len = cqi_read_word();
  $bytes_read = $conn->read($msg, $len);
  croak "cqi_read_string(): $!"
    unless defined $bytes_read and $bytes_read == $len;
  return $msg;
}

sub cqi_read_byte_list() {
  my ($i, $len, @list);
  $len = cqi_read_int();
  for ($i = $len; $i > 0; $i--) {
    push @list, cqi_read_byte;
  }
  return @list;
}

sub cqi_read_word_list() {
  my ($i, $len, @list);
  $len = cqi_read_int();
  for ($i = $len; $i > 0; $i--) {
    push @list, cqi_read_word();
  }
  return @list;
}

sub cqi_read_int_list() {
  my ($i, $len, @list);
  $len = cqi_read_int();
  for ($i = $len; $i > 0; $i--) {
    push @list, cqi_read_int();
  }
  return @list;
}

sub cqi_read_string_list() {
  my ($i, $len, @list);
  $len = cqi_read_int();
  for ($i = $len; $i > 0; $i--) {
    push @list, cqi_read_string();
  }
  return @list;
}

sub cqi_read_int_table() {
  my $rows = cqi_read_int();
  my $columns = cqi_read_int();
  my @table = ();
  for (my $i = 0; $i < $rows; $i++) {
    my @line = ();
    for (my $j = 0; $j < $columns; $j++) {
      push @line, cqi_read_int();
    }
    push @table, [@line];
  }



( run in 0.452 second using v1.01-cache-2.11-cpan-65fba6d93b7 )