Classes | Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
Variant Class Reference

Classes

struct  CallError
 

Public Types

enum  Type {
  NIL, BOOL, INT, REAL,
  STRING, VECTOR2, RECT2, VECTOR3,
  MATRIX32, PLANE, QUAT, _AABB,
  MATRIX3, TRANSFORM, COLOR, IMAGE,
  NODE_PATH, _RID, OBJECT, INPUT_EVENT,
  DICTIONARY, ARRAY, RAW_ARRAY, INT_ARRAY,
  REAL_ARRAY, STRING_ARRAY, VECTOR2_ARRAY, VECTOR3_ARRAY,
  COLOR_ARRAY, VARIANT_MAX
}
 
enum  Operator {
  OP_EQUAL, OP_NOT_EQUAL, OP_LESS, OP_LESS_EQUAL,
  OP_GREATER, OP_GREATER_EQUAL, OP_ADD, OP_SUBSTRACT,
  OP_MULTIPLY, OP_DIVIDE, OP_NEGATE, OP_MODULE,
  OP_STRING_CONCAT, OP_SHIFT_LEFT, OP_SHIFT_RIGHT, OP_BIT_AND,
  OP_BIT_OR, OP_BIT_XOR, OP_BIT_NEGATE, OP_AND,
  OP_OR, OP_XOR, OP_NOT, OP_IN,
  OP_MAX
}
 
typedef String(* ObjectDeConstruct) (const Variant &p_object, void *ud)
 
typedef void(* ObjectConstruct) (const String &p_text, void *ud, Variant &r_value)
 

Public Member Functions

_FORCE_INLINE_ Type get_type () const
 
bool is_ref () const
 
_FORCE_INLINE_ bool is_num () const
 
_FORCE_INLINE_ bool is_array () const
 
bool is_shared () const
 
bool is_zero () const
 
bool is_one () const
 
 operator bool () const
 
 operator signed int () const
 
 operator unsigned int () const
 
 operator signed short () const
 
 operator unsigned short () const
 
 operator signed char () const
 
 operator unsigned char () const
 
 operator int64_t () const
 
 operator uint64_t () const
 
 operator CharType () const
 
 operator float () const
 
 operator double () const
 
 operator String () const
 
 operator StringName () const
 
 operator Vector2 () const
 
 operator Rect2 () const
 
 operator Vector3 () const
 
 operator Plane () const
 
 operator AABB () const
 
 operator Quat () const
 
 operator Matrix3 () const
 
 operator Transform () const
 
 operator Matrix32 () const
 
 operator Color () const
 
 operator Image () const
 
 operator NodePath () const
 
 operator RefPtr () const
 
 operator RID () const
 
 operator InputEvent () const
 
 operator Object * () const
 
 operator Node * () const
 
 operator Control * () const
 
 operator Dictionary () const
 
 operator Array () const
 
 operator DVector< uint8_t > () const
 
 operator DVector< int > () const
 
 operator DVector< real_t > () const
 
 operator DVector< String > () const
 
 operator DVector< Vector3 > () const
 
 operator DVector< Color > () const
 
 operator DVector< Plane > () const
 
 operator DVector< Face3 > () const
 
 operator Vector< Variant > () const
 
 operator Vector< uint8_t > () const
 
 operator Vector< int > () const
 
 operator Vector< real_t > () const
 
 operator Vector< String > () const
 
 operator Vector< Vector3 > () const
 
 operator Vector< Color > () const
 
 operator Vector< RID > () const
 
 operator Vector< Vector2 > () const
 
 operator DVector< Vector2 > () const
 
 operator Vector< Plane > () const
 
 operator Margin () const
 
 operator Orientation () const
 
 operator IP_Address () const
 
 Variant (bool p_bool)
 
 Variant (signed int p_int)
 
 Variant (unsigned int p_int)
 
 Variant (signed short p_short)
 
 Variant (unsigned short p_short)
 
 Variant (signed char p_char)
 
 Variant (unsigned char p_char)
 
 Variant (int64_t p_char)
 
 Variant (uint64_t p_char)
 
 Variant (float p_float)
 
 Variant (double p_double)
 
 Variant (const String &p_string)
 
 Variant (const StringName &p_string)
 
 Variant (const char *const p_cstring)
 
 Variant (const CharType *p_wstring)
 
 Variant (const Vector2 &p_vector2)
 
 Variant (const Rect2 &p_rect2)
 
 Variant (const Vector3 &p_vector3)
 
 Variant (const Plane &p_plane)
 
 Variant (const AABB &p_aabb)
 
 Variant (const Quat &p_quat)
 
 Variant (const Matrix3 &p_transform)
 
 Variant (const Matrix32 &p_transform)
 
 Variant (const Transform &p_transform)
 
 Variant (const Color &p_color)
 
 Variant (const Image &p_image)
 
 Variant (const NodePath &p_path)
 
 Variant (const RefPtr &p_resource)
 
 Variant (const RID &p_rid)
 
 Variant (const Object *p_object)
 
 Variant (const InputEvent &p_input_event)
 
 Variant (const Dictionary &p_dictionary)
 
 Variant (const Array &p_array)
 
 Variant (const DVector< Plane > &p_array)
 
 Variant (const DVector< uint8_t > &p_raw_array)
 
 Variant (const DVector< int > &p_int_array)
 
 Variant (const DVector< real_t > &p_real_array)
 
 Variant (const DVector< String > &p_string_array)
 
 Variant (const DVector< Vector3 > &p_vector3_array)
 
 Variant (const DVector< Color > &p_color_array)
 
 Variant (const DVector< Face3 > &p_face_array)
 
 Variant (const Vector< Variant > &p_array)
 
 Variant (const Vector< uint8_t > &p_raw_array)
 
 Variant (const Vector< int > &p_int_array)
 
 Variant (const Vector< real_t > &p_real_array)
 
 Variant (const Vector< String > &p_string_array)
 
 Variant (const Vector< Vector3 > &p_vector3_array)
 
 Variant (const Vector< Color > &p_color_array)
 
 Variant (const Vector< Plane > &p_array)
 
 Variant (const Vector< RID > &p_array)
 
 Variant (const Vector< Vector2 > &p_array)
 
 Variant (const DVector< Vector2 > &p_array)
 
 Variant (const IP_Address &p_address)
 
void zero ()
 
Variant call (const StringName &p_method, const Variant **p_args, int p_argcount, CallError &r_error)
 
Variant call (const StringName &p_method, const Variant &p_arg1=Variant(), const Variant &p_arg2=Variant(), const Variant &p_arg3=Variant(), const Variant &p_arg4=Variant(), const Variant &p_arg5=Variant())
 
void get_method_list (List< MethodInfo > *p_list) const
 
bool has_method (const StringName &p_method) const
 
void set_named (const StringName &p_index, const Variant &p_value, bool *r_valid=NULL)
 
Variant get_named (const StringName &p_index, bool *r_valid=NULL) const
 
void set (const Variant &p_index, const Variant &p_value, bool *r_valid=NULL)
 
Variant get (const Variant &p_index, bool *r_valid=NULL) const
 
bool in (const Variant &p_index, bool *r_valid=NULL) const
 
bool iter_init (Variant &r_iter, bool &r_valid) const
 
bool iter_next (Variant &r_iter, bool &r_valid) const
 
Variant iter_get (const Variant &r_iter, bool &r_valid) const
 
void get_property_list (List< PropertyInfo > *p_list) const
 
bool operator== (const Variant &p_variant) const
 
bool operator!= (const Variant &p_variant) const
 
bool operator< (const Variant &p_variant) const
 
uint32_t hash () const
 
bool booleanize (bool &valid) const
 
void static_assign (const Variant &p_variant)
 
String get_construct_string () const
 
void operator= (const Variant &p_variant)
 
 Variant (const Variant &p_variant)
 

Static Public Member Functions

static String get_type_name (Variant::Type p_type)
 
static bool can_convert (Type p_type_from, Type p_type_to)
 
static bool can_convert_strict (Type p_type_from, Type p_type_to)
 
template<class T >
static Type get_type_for ()
 
static String get_operator_name (Operator p_op)
 
static void evaluate (const Operator &p_op, const Variant &p_a, const Variant &p_b, Variant &r_ret, bool &r_valid)
 
static _FORCE_INLINE_ Variant evaluate (const Operator &p_op, const Variant &p_a, const Variant &p_b)
 
static void blend (const Variant &a, const Variant &b, float c, Variant &r_dst)
 
static void interpolate (const Variant &a, const Variant &b, float c, Variant &r_dst)
 
static String get_call_error_text (Object *p_base, const StringName &p_method, const Variant **p_argptrs, int p_argcount, const Variant::CallError &ce)
 
static Variant construct (const Variant::Type, const Variant **p_args, int p_argcount, CallError &r_error, bool p_strict=true)
 
static void get_constructor_list (Variant::Type p_type, List< MethodInfo > *p_list)
 
static void get_numeric_constants_for_type (Variant::Type p_type, List< StringName > *p_constants)
 
static bool has_numeric_constant (Variant::Type p_type, const StringName &p_value)
 
static int get_numeric_constant_value (Variant::Type p_type, const StringName &p_value)
 
static void construct_from_string (const String &p_string, Variant &r_value, ObjectConstruct p_obj_construct=NULL, void *p_construct_ud=NULL)
 

Friends

class _VariantCall
 

The documentation for this class was generated from the following files: