---
name: "cs_register_fileload"
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_register_fileload"
---

# cs\_register\_fileload(3)

register a fileload function

## NAME

cs\_register\_fileload  - register a fileload function

## SYNOPSIS

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

```
void cs_register_fileload(CSPARSE *parse, void *ctx, CSFILELOAD fileload);
```

## ARGUMENTS

parse - a pointer to an initialized CSPARSE structure\
 ctx - pointer that is passed to the CSFILELOAD function when called\
 fileload - a CSFILELOAD function

## DESCRIPTION

cs\_register\_fileload registers a fileload function that  overrides the built-in function.  The built-in function uses hdf\_search\_path and ne\_file\_load (based on stat/open/read) to find and load the file on every template render. You can override this function if you wish to provide other template search functions, or load the template from an in-memory cache, etc. This fileload function will be used by cs\_parse, including

include: commands in the template.

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