girara
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros
Data Structures | Macros | Typedefs | Enumerations | Functions
template.c File Reference
#include "template.h"
#include "utils.h"
#include "datastructures.h"
#include <glib.h>
Include dependency graph for template.c:

Go to the source code of this file.

Data Structures

struct  private_t
 
struct  variable_t
 

Macros

#define GET_PRIVATE(obj)   (G_TYPE_INSTANCE_GET_PRIVATE((obj), GIRARA_TYPE_TEMPLATE, private_t))
 

Typedefs

typedef struct private_s GiraraTemplatePrivate
 

Enumerations

enum  { PROP_0, PROP_BASE }
 
enum  { BASE_CHANGED, VARIABLE_CHANGED, TEMPLATE_CHANGED, LAST_SIGNAL }
 

Functions

GiraraTemplate * girara_template_new (const char *base)
 
void girara_template_set_base (GiraraTemplate *object, const char *base)
 
const char * girara_template_get_base (GiraraTemplate *object)
 
girara_list_t * girara_template_referenced_variables (GiraraTemplate *object)
 
bool girara_template_add_variable (GiraraTemplate *object, const char *name)
 
void girara_template_set_variable_value (GiraraTemplate *object, const char *name, const char *value)
 
char * girara_template_evaluate (GiraraTemplate *object)
 

Macro Definition Documentation

#define GET_PRIVATE (   obj)    (G_TYPE_INSTANCE_GET_PRIVATE((obj), GIRARA_TYPE_TEMPLATE, private_t))

Definition at line 25 of file template.c.

Typedef Documentation

typedef struct private_s GiraraTemplatePrivate

Definition at line 23 of file template.c.

Enumeration Type Documentation

anonymous enum
Enumerator
PROP_0 
PROP_BASE 

Definition at line 93 of file template.c.

anonymous enum
Enumerator
BASE_CHANGED 
VARIABLE_CHANGED 
TEMPLATE_CHANGED 
LAST_SIGNAL 

Definition at line 99 of file template.c.

Function Documentation

bool girara_template_add_variable ( GiraraTemplate *  object,
const char *  name 
)

Register a variable.

Parameters
objectGiraraTemplate object
namename of the variable
Returns
true if the variable was added, false otherwise

Definition at line 365 of file template.c.

char* girara_template_evaluate ( GiraraTemplate *  object)

Replace all variables with their values in the template.

Parameters
objectGiraraTemplate object
Returns
evaluated template, needes to be deallocated with g_free

Definition at line 441 of file template.c.

const char* girara_template_get_base ( GiraraTemplate *  object)

Get the base string of the template.

Parameters
objectGiraraTemplate object
Returns
string that is used as template

Definition at line 294 of file template.c.

GiraraTemplate* girara_template_new ( const char *  base)

Create new template object.

Parameters
basea string that is used as template
Returns
a templot object

Definition at line 263 of file template.c.

girara_list_t* girara_template_referenced_variables ( GiraraTemplate *  object)

Get list of variable names referenced in the template.

Parameters
objectGiraraTemplate object
Returns
list of variables names referenced in the template

Definition at line 356 of file template.c.

void girara_template_set_base ( GiraraTemplate *  object,
const char *  base 
)

Set the base string of the template.

Parameters
objectGiraraTemplate object
basea string that is used as template

Definition at line 279 of file template.c.

void girara_template_set_variable_value ( GiraraTemplate *  object,
const char *  name,
const char *  value 
)

Set value of a variable.

Parameters
objectGiraraTemplate object
namename of the variable
valuevalue of the variable

Definition at line 398 of file template.c.