### Function

# EDataServer free_form_exp_to_sexp

since: 3.16

#### Declaration [src]

    gchar*
    e_free_form_exp_to_sexp (
      const gchar* free_form_exp,
      const EFreeFormExpSymbol* symbols
    )

#### Description [src]

Converts the `free_form_exp` to an S-Expression using the S-Expression builders defined in the `symbols`. The `symbols` should have one symbol with an empty string as its name, which is used for words which do not have a symbol name prefix.

The `symbols` is a NULL-terminated array of known symbols. The NULL should be set for the symbol’s name.

Available since: 3.16

#### Parameters

`free_form_exp`

  Type: `const gchar*`

  A Free Form Expression.

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

`symbols`

  Type: `EFreeFormExpSymbol`

  Known symbols, which can be used in the Free From Expression.

  The data is owned by the caller of the function.

#### Return value

Type: `gchar*`

Converted `free_form_exp` into S-Expression, `NULL` on error. Free the returned string with a g_free(), when done with it.

The caller of the function takes ownership of the data, and is responsible for freeing it.
The return value can be `NULL`.
The value is a NUL terminated UTF-8 string.