---
name: "cs_parse_string"
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_parse_string"
---

# cs\_parse\_string(3)

parse a CS template string

## NAME

cs\_parse\_string  - parse a CS template string

## SYNOPSIS

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

```
NEOERR *cs_parse_string (CSPARSE *parse, char *buf, size_t blen);
```

## ARGUMENTS

parse - a CSPARSE structure created with cs\_init\
 buf - the string to parse.  Embedded NULLs are not currently\
 supported\
 blen - the length of the string

## DESCRIPTION

cs\_parse\_string parses a string.  The string is modified, and internal references are kept by the parse tree.  For this reason, ownership of the string is transfered to the CS system, and the string will be free'd when cs\_destroy() is called. The parse information will be appended to the current parse tree.  During parse, the only HDF variables which are evaluated are those used in evar or include statements.

## 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**
