1;
=head1 Name
SPVM::Native::Method - Information of Methods
=head1 Description
The Native::Method class of L<SPVM> has methods to manipulate information of methods.
=head1 Usage
=head1 Instance Methods
=head2 get_index
C<method get_index : int ();>
Returns the index.
If a memory error occurs, an exception is thrown.
=head2 get_name
C<method get_name : string ();>
Returns the name.
If a memory error occurs, an exception is thrown.
=head2 get_return_basic_type
C<method get_return_basic_type : L<Native::BasicType|SPVM::Native::BasicType> ();>
Returns L<Native::BasicType|SPVM::Native::BasicType> object of the return value.
If a memory error occurs, an exception is thrown.
=head2 get_return_type_dimension
C<method get_return_type_dimension : int ();>
Returns the type dimension of the return value.
If a memory error occurs, an exception is thrown.
=head2 get_return_type_flag
C<method get_return_type_flag : int ();>
Returns the type flag of the return value.
If a memory error occurs, an exception is thrown.
=head2 get_current_basic_type
C<method get_current_basic_type : L<Native::BasicType|SPVM::Native::BasicType> ();>
Returns the current L<Native::BasicType|SPVM::Native::BasicType> object that defines this method.
If a memory error occurs, an exception is thrown.
=head2 get_arg_by_index
C<method get_arg_by_index : L<Native::Arg|SPVM::Native::Arg> ($arg_index : int);>
Gets a L<arg|Native::Arg> object by an index, and returns it.
If a memory error occurs, an exception is thrown.
=head2 get_args_length
C<method get_args_length : int ();>
Returns the length of the arguments.
If a memory error occurs, an exception is thrown.
=head2 get_required_args_length
C<method get_required_args_length : int ();>
Returns the length of the required arguments.
If a memory error occurs, an exception is thrown.
=head2 is_class_method
C<method is_class_method : int ();>
If the method is class method, returns 1. Otherwise returns 0.
If a memory error occurs, an exception is thrown.
=head2 is_anon
C<method is_anon : int ();>
If the method is anon method, returns 1. Otherwise returns 0.
If a memory error occurs, an exception is thrown.
=head2 is_native
C<method is_native : int ();>
If the method is native method, returns 1. Otherwise returns 0.
If a memory error occurs, an exception is thrown.
=head2 is_precompile
C<method is_precompile : int ();>
If the method is precompiled method, returns 1. Otherwise returns 0.
If a memory error occurs, an exception is thrown.
=head2 is_enum
C<method is_enum : int ();>
If the method is enumeration, returns 1. Otherwise returns 0.
If a memory error occurs, an exception is thrown.
=head2 get_native_address
C<method get_native_address : L<Address|SPVM::Address> ();>
Gets the native L<address|SPVM::Address>.
If a memory error occurs, an exception is thrown.
=head2 set_native_address
C<method set_native_address : void ($address : L<Address|SPVM::Address>);>
Sets the native L<address|SPVM::Address>.
If a memory error occurs, an exception is thrown.
=head2 get_precompile_address
C<method get_precompile_address : L<Address|SPVM::Address> ();>
Gets the precompiled L<address|SPVM::Address>.
If a memory error occurs, an exception is thrown.
=head2 set_precompile_address
C<method set_precompile_address : void ($address : L<Address|SPVM::Address>);>
Sets the precompiled L<address|SPVM::Address>.
If a memory error occurs, an exception is thrown.
=head2 is_precompile_fallback
C<method is_precompile_fallback : int ();>
Gets the C<is_precompile_fallback>.
=head2 set_is_precompile_fallback
C<method set_is_precompile_fallback : void ($is_precompile_fallback : int);>
Sets the C<is_precompile_fallback>.
=head1 Copyright & License
Copyright (c) 2023 Yuki Kimoto
MIT License