# Copyright (c) 2023 Yuki Kimoto
# MIT License
class Native::Arg {
use Native::BasicType;
has runtime : Native::Runtime;
native method get_index : int ();
native method get_basic_type : Native::BasicType ();
native method get_type_dimension : int ();
native method get_type_flag : int ();
native method is_optional : int ();
native method get_default_value_byte : byte ();
native method get_default_value_short : short ();
native method get_default_value_int : int ();
native method get_default_value_long : long ();
native method get_default_value_float : float ();
native method get_default_value_double : double ();
native method get_default_value_object : object ();
}