### Method

# Camel SExp add_function

since: 3.4

#### Declaration [src]

    void
    camel_sexp_add_function (
      CamelSExp* sexp,
      guint scope,
      const gchar* name,
      CamelSExpFunc func,
      gpointer user_data
    )

#### Description [src]

Adds a function symbol which can not perform short evaluation. Use `camel_sexp_add_ifunction()` for functions which can.

Available since: 3.4

This method is not directly available to language bindings.

#### Parameters

`scope`

  Type: `guint`

  A scope.

`name`

  Type: `const gchar*`

  A function name.

  The data is owned by the caller of the method.
  The value is a NUL terminated UTF-8 string.

`func`

  Type: `CamelSExpFunc`

  A function callback.

`user_data`

  Type: `gpointer`

  User data for `func`.

  The argument can be `NULL`.
  The data is owned by the caller of the method.