value.h File Reference

Value wrapper API. More...

#include <glib.h>

Go to the source code of this file.

Data Structures

struct  PurpleValue
 A wrapper for a type, subtype, and specific type of value. More...

Enumerations

enum  PurpleType {
  PURPLE_TYPE_UNKNOWN = 0, PURPLE_TYPE_SUBTYPE, PURPLE_TYPE_CHAR, PURPLE_TYPE_UCHAR,
  PURPLE_TYPE_BOOLEAN, PURPLE_TYPE_SHORT, PURPLE_TYPE_USHORT, PURPLE_TYPE_INT,
  PURPLE_TYPE_UINT, PURPLE_TYPE_LONG, PURPLE_TYPE_ULONG, PURPLE_TYPE_INT64,
  PURPLE_TYPE_UINT64, PURPLE_TYPE_STRING, PURPLE_TYPE_OBJECT, PURPLE_TYPE_POINTER,
  PURPLE_TYPE_ENUM, PURPLE_TYPE_BOXED
}
 Specific value types. More...
enum  PurpleSubType {
  PURPLE_SUBTYPE_UNKNOWN = 0, PURPLE_SUBTYPE_ACCOUNT, PURPLE_SUBTYPE_BLIST, PURPLE_SUBTYPE_BLIST_BUDDY,
  PURPLE_SUBTYPE_BLIST_GROUP, PURPLE_SUBTYPE_BLIST_CHAT, PURPLE_SUBTYPE_BUDDY_ICON, PURPLE_SUBTYPE_CONNECTION,
  PURPLE_SUBTYPE_CONVERSATION, PURPLE_SUBTYPE_PLUGIN, PURPLE_SUBTYPE_BLIST_NODE, PURPLE_SUBTYPE_CIPHER,
  PURPLE_SUBTYPE_STATUS, PURPLE_SUBTYPE_LOG, PURPLE_SUBTYPE_XFER, PURPLE_SUBTYPE_SAVEDSTATUS,
  PURPLE_SUBTYPE_XMLNODE, PURPLE_SUBTYPE_USERINFO, PURPLE_SUBTYPE_STORED_IMAGE, PURPLE_SUBTYPE_CERTIFICATEPOOL
}
 Purple-specific subtype values.

Functions

PurpleValuepurple_value_new (PurpleType type,...)
 Creates a new PurpleValue.
PurpleValuepurple_value_new_outgoing (PurpleType type,...)
 Creates a new outgoing PurpleValue.
void purple_value_destroy (PurpleValue *value)
 Destroys a PurpleValue.
PurpleValuepurple_value_dup (const PurpleValue *value)
 Duplicated a PurpleValue.
PurpleType purple_value_get_type (const PurpleValue *value)
 Returns a value's type.
unsigned int purple_value_get_subtype (const PurpleValue *value)
 Returns a value's subtype.
const char * purple_value_get_specific_type (const PurpleValue *value)
 Returns a value's specific type.
gboolean purple_value_is_outgoing (const PurpleValue *value)
 Returns whether or not the value is an outgoing value.
void purple_value_set_char (PurpleValue *value, char data)
 Sets the value's character data.
void purple_value_set_uchar (PurpleValue *value, unsigned char data)
 Sets the value's unsigned character data.
void purple_value_set_boolean (PurpleValue *value, gboolean data)
 Sets the value's boolean data.
void purple_value_set_short (PurpleValue *value, short data)
 Sets the value's short integer data.
void purple_value_set_ushort (PurpleValue *value, unsigned short data)
 Sets the value's unsigned short integer data.
void purple_value_set_int (PurpleValue *value, int data)
 Sets the value's integer data.
void purple_value_set_uint (PurpleValue *value, unsigned int data)
 Sets the value's unsigned integer data.
void purple_value_set_long (PurpleValue *value, long data)
 Sets the value's long integer data.
void purple_value_set_ulong (PurpleValue *value, unsigned long data)
 Sets the value's unsigned long integer data.
void purple_value_set_int64 (PurpleValue *value, gint64 data)
 Sets the value's 64-bit integer data.
void purple_value_set_uint64 (PurpleValue *value, guint64 data)
 Sets the value's unsigned 64-bit integer data.
void purple_value_set_string (PurpleValue *value, const char *data)
 Sets the value's string data.
void purple_value_set_object (PurpleValue *value, void *data)
 Sets the value's object data.
void purple_value_set_pointer (PurpleValue *value, void *data)
 Sets the value's pointer data.
void purple_value_set_enum (PurpleValue *value, int data)
 Sets the value's enum data.
void purple_value_set_boxed (PurpleValue *value, void *data)
 Sets the value's boxed data.
char purple_value_get_char (const PurpleValue *value)
 Returns the value's character data.
unsigned char purple_value_get_uchar (const PurpleValue *value)
 Returns the value's unsigned character data.
gboolean purple_value_get_boolean (const PurpleValue *value)
 Returns the value's boolean data.
short purple_value_get_short (const PurpleValue *value)
 Returns the value's short integer data.
unsigned short purple_value_get_ushort (const PurpleValue *value)
 Returns the value's unsigned short integer data.
int purple_value_get_int (const PurpleValue *value)
 Returns the value's integer data.
unsigned int purple_value_get_uint (const PurpleValue *value)
 Returns the value's unsigned integer data.
long purple_value_get_long (const PurpleValue *value)
 Returns the value's long integer data.
unsigned long purple_value_get_ulong (const PurpleValue *value)
 Returns the value's unsigned long integer data.
gint64 purple_value_get_int64 (const PurpleValue *value)
 Returns the value's 64-bit integer data.
guint64 purple_value_get_uint64 (const PurpleValue *value)
 Returns the value's unsigned 64-bit integer data.
const char * purple_value_get_string (const PurpleValue *value)
 Returns the value's string data.
void * purple_value_get_object (const PurpleValue *value)
 Returns the value's object data.
void * purple_value_get_pointer (const PurpleValue *value)
 Returns the value's pointer data.
int purple_value_get_enum (const PurpleValue *value)
 Returns the value's enum data.
void * purple_value_get_boxed (const PurpleValue *value)
 Returns the value's boxed data.


Detailed Description

Value wrapper API.

Definition in file value.h.


Enumeration Type Documentation

enum PurpleType

Specific value types.

Enumerator:
PURPLE_TYPE_UNKNOWN  Unknown type.

PURPLE_TYPE_SUBTYPE  Subtype.

PURPLE_TYPE_CHAR  Character.

PURPLE_TYPE_UCHAR  Unsigned character.

PURPLE_TYPE_BOOLEAN  Boolean.

PURPLE_TYPE_SHORT  Short integer.

PURPLE_TYPE_USHORT  Unsigned short integer.

PURPLE_TYPE_INT  Integer.

PURPLE_TYPE_UINT  Unsigned integer.

PURPLE_TYPE_LONG  Long integer.

PURPLE_TYPE_ULONG  Unsigned long integer.

PURPLE_TYPE_INT64  64-bit integer.

PURPLE_TYPE_UINT64  64-bit unsigned integer.

PURPLE_TYPE_STRING  String.

PURPLE_TYPE_OBJECT  Object pointer.

PURPLE_TYPE_POINTER  Generic pointer.

PURPLE_TYPE_ENUM  Enum.

PURPLE_TYPE_BOXED  Boxed pointer with specific type.

Definition at line 34 of file value.h.


Function Documentation

void purple_value_destroy ( PurpleValue value  ) 

Destroys a PurpleValue.

Parameters:
value The value to destroy.

PurpleValue* purple_value_dup ( const PurpleValue value  ) 

Duplicated a PurpleValue.

Parameters:
value The value to duplicate.
Returns:
The duplicate value.

gboolean purple_value_get_boolean ( const PurpleValue value  ) 

Returns the value's boolean data.

Parameters:
value The value.
Returns:
The boolean data.

void* purple_value_get_boxed ( const PurpleValue value  ) 

Returns the value's boxed data.

Parameters:
value The value.
Returns:
The boxed data.

char purple_value_get_char ( const PurpleValue value  ) 

Returns the value's character data.

Parameters:
value The value.
Returns:
The character data.

int purple_value_get_enum ( const PurpleValue value  ) 

Returns the value's enum data.

Parameters:
value The value.
Returns:
The enum data.

int purple_value_get_int ( const PurpleValue value  ) 

Returns the value's integer data.

Parameters:
value The value.
Returns:
The integer data.

gint64 purple_value_get_int64 ( const PurpleValue value  ) 

Returns the value's 64-bit integer data.

Parameters:
value The value.
Returns:
The 64-bit integer data.

long purple_value_get_long ( const PurpleValue value  ) 

Returns the value's long integer data.

Parameters:
value The value.
Returns:
The long integer data.

void* purple_value_get_object ( const PurpleValue value  ) 

Returns the value's object data.

Parameters:
value The value.
Returns:
The object data.

void* purple_value_get_pointer ( const PurpleValue value  ) 

Returns the value's pointer data.

Parameters:
value The value.
Returns:
The pointer data.

short purple_value_get_short ( const PurpleValue value  ) 

Returns the value's short integer data.

Parameters:
value The value.
Returns:
The short integer data.

const char* purple_value_get_specific_type ( const PurpleValue value  ) 

Returns a value's specific type.

If the value's type is not PURPLE_TYPE_BOXED, this will return NULL.

Parameters:
value The value whose specific type you want.
Returns:
The value's specific type, or NULL if not PURPLE_TYPE_BOXED.

const char* purple_value_get_string ( const PurpleValue value  ) 

Returns the value's string data.

Parameters:
value The value.
Returns:
The string data.

unsigned int purple_value_get_subtype ( const PurpleValue value  ) 

Returns a value's subtype.

If the value's type is not PURPLE_TYPE_SUBTYPE, this will return 0. Subtypes should never have a subtype of 0.

Parameters:
value The value whose subtype you want.
Returns:
The value's subtype, or 0 if type is not PURPLE_TYPE_SUBTYPE.

PurpleType purple_value_get_type ( const PurpleValue value  ) 

Returns a value's type.

Parameters:
value The value whose type you want.
Returns:
The value's type.

unsigned char purple_value_get_uchar ( const PurpleValue value  ) 

Returns the value's unsigned character data.

Parameters:
value The value.
Returns:
The unsigned character data.

unsigned int purple_value_get_uint ( const PurpleValue value  ) 

Returns the value's unsigned integer data.

Parameters:
value The value.
Returns:
The unsigned integer data.

guint64 purple_value_get_uint64 ( const PurpleValue value  ) 

Returns the value's unsigned 64-bit integer data.

Parameters:
value The value.
Returns:
The unsigned 64-bit integer data.

unsigned long purple_value_get_ulong ( const PurpleValue value  ) 

Returns the value's unsigned long integer data.

Parameters:
value The value.
Returns:
The unsigned long integer data.

unsigned short purple_value_get_ushort ( const PurpleValue value  ) 

Returns the value's unsigned short integer data.

Parameters:
value The value.
Returns:
The unsigned short integer data.

gboolean purple_value_is_outgoing ( const PurpleValue value  ) 

Returns whether or not the value is an outgoing value.

Parameters:
value The value.
Returns:
TRUE if the value is outgoing, or FALSE otherwise.

PurpleValue* purple_value_new ( PurpleType  type,
  ... 
)

Creates a new PurpleValue.

This function takes a type and, depending on that type, a sub-type or specific type.

If type is PURPLE_TYPE_BOXED, the next parameter must be a string representing the specific type.

If type is PURPLE_TYPE_SUBTYPE, the next parameter must be a integer or enum representing the sub-type.

If the subtype or specific type is not set when required, random errors may occur. You have been warned.

Parameters:
type The type.
Returns:
The new value.

PurpleValue* purple_value_new_outgoing ( PurpleType  type,
  ... 
)

Creates a new outgoing PurpleValue.

If a value is an "outgoing" value it means the value can be modified by plugins and scripts.

This function takes a type and, depending on that type, a sub-type or specific type.

If type is PURPLE_TYPE_BOXED, the next parameter must be a string representing the specific type.

If type is PURPLE_TYPE_SUBTYPE, the next parameter must be a integer or enum representing the sub-type.

If the sub-type or specific type is not set when required, random errors may occur. You have been warned.

Parameters:
type The type.
Returns:
The new value.

void purple_value_set_boolean ( PurpleValue value,
gboolean  data 
)

Sets the value's boolean data.

Parameters:
value The value.
data The boolean data.

void purple_value_set_boxed ( PurpleValue value,
void *  data 
)

Sets the value's boxed data.

Parameters:
value The value.
data The boxed data.

void purple_value_set_char ( PurpleValue value,
char  data 
)

Sets the value's character data.

Parameters:
value The value.
data The character data.

void purple_value_set_enum ( PurpleValue value,
int  data 
)

Sets the value's enum data.

Parameters:
value The value.
data The enum data.

void purple_value_set_int ( PurpleValue value,
int  data 
)

Sets the value's integer data.

Parameters:
value The value.
data The integer data.

void purple_value_set_int64 ( PurpleValue value,
gint64  data 
)

Sets the value's 64-bit integer data.

Parameters:
value The value.
data The 64-bit integer data.

void purple_value_set_long ( PurpleValue value,
long  data 
)

Sets the value's long integer data.

Parameters:
value The value.
data The long integer data.

void purple_value_set_object ( PurpleValue value,
void *  data 
)

Sets the value's object data.

Parameters:
value The value.
data The object data.

void purple_value_set_pointer ( PurpleValue value,
void *  data 
)

Sets the value's pointer data.

Parameters:
value The value.
data The pointer data.

void purple_value_set_short ( PurpleValue value,
short  data 
)

Sets the value's short integer data.

Parameters:
value The value.
data The short integer data.

void purple_value_set_string ( PurpleValue value,
const char *  data 
)

Sets the value's string data.

Parameters:
value The value.
data The string data.

void purple_value_set_uchar ( PurpleValue value,
unsigned char  data 
)

Sets the value's unsigned character data.

Parameters:
value The value.
data The unsigned character data.

void purple_value_set_uint ( PurpleValue value,
unsigned int  data 
)

Sets the value's unsigned integer data.

Parameters:
value The value.
data The unsigned integer data.

void purple_value_set_uint64 ( PurpleValue value,
guint64  data 
)

Sets the value's unsigned 64-bit integer data.

Parameters:
value The value.
data The unsigned 64-bit integer data.

void purple_value_set_ulong ( PurpleValue value,
unsigned long  data 
)

Sets the value's unsigned long integer data.

Parameters:
value The value.
data The unsigned long integer data.

void purple_value_set_ushort ( PurpleValue value,
unsigned short  data 
)

Sets the value's unsigned short integer data.

Parameters:
value The value.
data The unsigned short integer data.