# Parser

## Functions

### orc_parse

    int
    orc_parse (const char * code,
               OrcProgram *** programs)

Parameters:

`code` –
No description available
`programs` –
No description available
Returns (int ) –
No description available

### orc_parse_code

    int
    orc_parse_code (const char * code,
                    OrcProgram *** programs,
                    int * n_program,
                    OrcParseError *** errors,
                    int * n_error)

Parameters:

`code` –

the orc source code

`programs` –

where to store the parsed orc programs

`n_program` –
No description available
`errors` –

where to store parse error details, or NULL

`n_error` –
No description available
Returns (int ) –

0 on success, -1 if there were any parse errors

Since : 0.4.34

### orc_parse_error_freev

    void
    orc_parse_error_freev (OrcParseError ** errors)

Parameters:

`errors` –
No description available
Returns (void ) –
No description available

### orc_parse_full

    int
    orc_parse_full (const char * code,
                    OrcProgram *** programs,
                    char ** log)

Parameters:

`code` –
No description available
`programs` –
No description available
`log` –
No description available
Returns (int ) –
No description available

### orc_parse_get_init_function

    const char *
    orc_parse_get_init_function (OrcProgram * program)

Parameters:

`program` –
No description available
Returns (const char *) –
No description available

## Structures

### OrcParseError

    struct _OrcParseError {
      const char *source;
      int line_number;
      int where;
      const char *text;
    };

#### Fields

`source` (const char *) –
No description available
`line_number` (int ) –
No description available
`where` (int ) –
No description available
`text` (const char *) –
No description available

The results of the search are