NAME

Wasm::Wasmtime::ImportType - Wasmtime import type class

VERSION

version 0.21

SYNOPSIS

 use Wasm::Wasmtime;
 
 my $module = Wasm::Wasmtime::Module->new( wat => q{
   (module
     (func $hello (import "xx" "hello"))
   )
 });
 
 my $hello = $module->imports->[0];
 
 print $hello->module, "\n";     # xx
 print $hello->name, "\n";       # hello
 print $hello->type->kind, "\n"; # functype

DESCRIPTION

This class represents an import from a module. It is essentially a name and an Wasm::Wasmtime::ExternType. The latter gives you the function signature and other configuration details for import objects.

CONSTRUCTOR

new

 my $importtype = Wasm::Wasmtime::ImportType->new(
   $module,       # Wasm::Wasmtime::Module
   $name,         # string
   $externtype,   # Wasm::Wasmtime::FuncType, ::MemoryType, ::GlobalType or ::TableType
 );

Creates a new import type object.

METHODS

name

 my $name = $importtype->name;

Returns the name of the import.

type

 my $externtype = $importtype->type;

Returns the Wasm::Wasmtime::ExternType for the import.

module

 my $name = $importtype->module;

Returns the name of the module for the import.

to_string

 my $string = $importtype->to_string;

Converts the type into a string for diagnostics.

SEE ALSO

Wasm
Wasm::Wasmtime

AUTHOR

Graham Ollis <plicease@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2020 by Graham Ollis.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.