---
name: "cs_render"
section: "3"
platform: "linux"
package: "clearsilver-dev"
version: "0.10.5-6+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/cs_render"
---

# cs\_render(3)

render a CS parse tree

## NAME

cs\_render  - render a CS parse tree

## SYNOPSIS

```
#include <cs/cs.h>
```

```
NEOERR *cs_render (CSPARSE *parse, void *ctx, CSOUTFUNC cb);
```

## ARGUMENTS

parse - the CSPARSE structure containing the CS parse tree\
 that will be evaluated\
 ctx - user data that will be passed as the first variable to\
 the CSOUTFUNC.\
 cb - a CSOUTFUNC called to render the output.  A CSOUTFUNC is\
 defined as:\
 typedef NEOERR\* (\*CSOUTFUNC)(void \*, char \*);

## DESCRIPTION

cs\_render will evaluate a CS parse tree, calling the CSOUTFUNC passed to it for output.  Note that calling cs\_render multiple times on the same parse tree may or may not render the same output as the set statement has side-effects, it updates the HDF data used by the render.  Typically, you will call one of the cs\_parse functions before calling this function.

## RETURN VALUE

None

## SEE ALSO

[**cs\_dump**(3)](/cs_dump/3.md), [**cs\_destroy**(3)](/cs_destroy/3.md), [**cs\_render**(3)](/cs_render/3.md), [**cs\_register\_esc\_strfunc**(3)](/cs_register_esc_strfunc/3.md), **cs\_arg\_parsev**(3), [**cs\_register\_fileload**(3)](/cs_register_fileload/3.md), [**cs\_init**(3)](/cs_init/3.md), [**cs\_register\_strfunc**(3)](/cs_register_strfunc/3.md), **cs\_arg\_parse**(3), [**cs\_parse\_string**(3)](/cs_parse_string/3.md), [**cs\_parse\_file**(3)](/cs_parse_file/3.md), **=**(3), **cs\_register\_function**
