aboutsummaryrefslogtreecommitdiffhomepage
path: root/function.h
diff options
context:
space:
mode:
authorGravatar axel <axel@liljencrantz.se>2005-09-20 23:26:39 +1000
committerGravatar axel <axel@liljencrantz.se>2005-09-20 23:26:39 +1000
commit149594f974350bb364a76c73b91b1d5ffddaa1fa (patch)
tree95650e9982d5fabe4bd805d94c5d700cbbc1ca7f /function.h
Initial revision
darcs-hash:20050920132639-ac50b-fa3b476891e1f5f67207cf4cc7bf623834cc5edc.gz
Diffstat (limited to 'function.h')
-rw-r--r--function.h63
1 files changed, 63 insertions, 0 deletions
diff --git a/function.h b/function.h
new file mode 100644
index 00000000..b0e8f1c3
--- /dev/null
+++ b/function.h
@@ -0,0 +1,63 @@
+/** \file function.h
+
+ Prototypes for functions for storing and retrieving function
+ information. Actual function evaluation is taken care of by the
+ parser and to some degree the builtin handling library.
+*/
+
+/**
+ Initialize function data
+*/
+void function_init();
+/**
+ Destroy function data
+*/
+void function_destroy();
+
+/**
+ Add an function. The parameters values are copied and should be freed by the caller.
+*/
+void function_add( const wchar_t *name,
+ const wchar_t *val,
+ const wchar_t *desc );
+
+/**
+ Remove the function with the specified name.
+*/
+void function_remove( const wchar_t *name );
+
+/**
+ Returns true if the function with the name name uses internal variables, false otherwise.
+*/
+int function_use_vars( const wchar_t *name );
+
+/**
+ Returns the definition of the function with the name \c name.
+*/
+const wchar_t *function_get_definition( const wchar_t *name );
+
+/**
+ Returns the description of the function with the name \c name.
+*/
+const wchar_t *function_get_desc( const wchar_t *name );
+
+/**
+ Sets the description of the function with the name \c name.
+*/
+void function_set_desc( const wchar_t *name, const wchar_t *desc );
+
+/**
+ Returns true if the function witrh the name name exists.
+*/
+int function_exists( const wchar_t *name);
+
+/**
+ Insert all function names into l. These are not copies of the strings and should not be freed after use.
+
+ \param list the list to add the names to
+ \param get_hidden whether to include hidden functions, i.e. ones starting with an underscore
+*/
+void function_get_names( array_list_t *list,
+ int get_hidden );
+
+