Polly 22.0.0git
stream.h File Reference
#include <stdio.h>
#include <isl/hash.h>
#include <isl/aff_type.h>
#include <isl/obj.h>
#include <isl/val_type.h>
#include <isl/schedule_type.h>

Go to the source code of this file.

Typedefs

typedef struct isl_stream isl_stream

Enumerations

enum  isl_token_type {
  ISL_TOKEN_ERROR = -1 , ISL_TOKEN_UNKNOWN = 256 , ISL_TOKEN_VALUE , ISL_TOKEN_IDENT ,
  ISL_TOKEN_GE , ISL_TOKEN_LE , ISL_TOKEN_GT , ISL_TOKEN_LT ,
  ISL_TOKEN_NE , ISL_TOKEN_EQ_EQ , ISL_TOKEN_LEX_GE , ISL_TOKEN_LEX_LE ,
  ISL_TOKEN_LEX_GT , ISL_TOKEN_LEX_LT , ISL_TOKEN_TO , ISL_TOKEN_AND ,
  ISL_TOKEN_OR , ISL_TOKEN_EXISTS , ISL_TOKEN_NOT , ISL_TOKEN_DEF ,
  ISL_TOKEN_INFTY , ISL_TOKEN_NAN , ISL_TOKEN_MIN , ISL_TOKEN_MAX ,
  ISL_TOKEN_RAT , ISL_TOKEN_TRUE , ISL_TOKEN_FALSE , ISL_TOKEN_CEILD ,
  ISL_TOKEN_FLOORD , ISL_TOKEN_MOD , ISL_TOKEN_STRING , ISL_TOKEN_MAP ,
  ISL_TOKEN_AFF , ISL_TOKEN_CEIL , ISL_TOKEN_FLOOR , ISL_TOKEN_IMPLIES ,
  ISL_TOKEN_INT_DIV , ISL_TOKEN_LAST
}

Functions

__isl_give isl_valisl_token_get_val (isl_ctx *ctx, struct isl_token *tok)
isl_bool isl_token_has_str (struct isl_token *tok)
__isl_give char * isl_token_get_str (isl_ctx *ctx, struct isl_token *tok)
int isl_token_get_type (struct isl_token *tok)
void isl_token_free (struct isl_token *tok)
__isl_give isl_streamisl_stream_new_file (isl_ctx *ctx, FILE *file)
__isl_give isl_streamisl_stream_new_str (isl_ctx *ctx, const char *str)
void isl_stream_free (__isl_take isl_stream *s)
isl_ctxisl_stream_get_ctx (__isl_keep isl_stream *s)
void isl_stream_error (__isl_keep isl_stream *s, struct isl_token *tok, char *msg)
struct isl_tokenisl_stream_next_token (__isl_keep isl_stream *s)
struct isl_tokenisl_stream_next_token_on_same_line (__isl_keep isl_stream *s)
int isl_stream_next_token_is (__isl_keep isl_stream *s, int type)
void isl_stream_push_token (__isl_keep isl_stream *s, struct isl_token *tok)
void isl_stream_flush_tokens (__isl_keep isl_stream *s)
int isl_stream_eat_if_available (__isl_keep isl_stream *s, int type)
char * isl_stream_read_ident_if_available (__isl_keep isl_stream *s)
int isl_stream_eat (__isl_keep isl_stream *s, int type)
int isl_stream_is_empty (__isl_keep isl_stream *s)
int isl_stream_skip_line (__isl_keep isl_stream *s)
enum isl_token_type isl_stream_register_keyword (__isl_keep isl_stream *s, const char *name)
struct isl_obj isl_stream_read_obj (__isl_keep isl_stream *s)
__isl_give isl_idisl_stream_read_id (__isl_keep isl_stream *s)
__isl_give isl_valisl_stream_read_val (__isl_keep isl_stream *s)
__isl_give isl_multi_affisl_stream_read_multi_aff (__isl_keep isl_stream *s)
__isl_give isl_mapisl_stream_read_map (__isl_keep isl_stream *s)
__isl_give isl_setisl_stream_read_set (__isl_keep isl_stream *s)
__isl_give isl_basic_setisl_stream_read_basic_set (__isl_keep isl_stream *s)
__isl_give isl_pw_qpolynomialisl_stream_read_pw_qpolynomial (__isl_keep isl_stream *s)
__isl_give isl_union_setisl_stream_read_union_set (__isl_keep isl_stream *s)
__isl_give isl_union_mapisl_stream_read_union_map (__isl_keep isl_stream *s)
__isl_give isl_scheduleisl_stream_read_schedule (isl_stream *s)
isl_stat isl_stream_yaml_read_start_mapping (__isl_keep isl_stream *s)
isl_stat isl_stream_yaml_read_end_mapping (__isl_keep isl_stream *s)
isl_stat isl_stream_yaml_read_start_sequence (__isl_keep isl_stream *s)
isl_stat isl_stream_yaml_read_end_sequence (__isl_keep isl_stream *s)
isl_bool isl_stream_yaml_next (__isl_keep isl_stream *s)

Typedef Documentation

◆ isl_stream

typedef struct isl_stream isl_stream

Definition at line 53 of file stream.h.

Enumeration Type Documentation

◆ isl_token_type

Enumerator
ISL_TOKEN_ERROR 
ISL_TOKEN_UNKNOWN 
ISL_TOKEN_VALUE 
ISL_TOKEN_IDENT 
ISL_TOKEN_GE 
ISL_TOKEN_LE 
ISL_TOKEN_GT 
ISL_TOKEN_LT 
ISL_TOKEN_NE 
ISL_TOKEN_EQ_EQ 
ISL_TOKEN_LEX_GE 
ISL_TOKEN_LEX_LE 
ISL_TOKEN_LEX_GT 
ISL_TOKEN_LEX_LT 
ISL_TOKEN_TO 
ISL_TOKEN_AND 
ISL_TOKEN_OR 
ISL_TOKEN_EXISTS 
ISL_TOKEN_NOT 
ISL_TOKEN_DEF 
ISL_TOKEN_INFTY 
ISL_TOKEN_NAN 
ISL_TOKEN_MIN 
ISL_TOKEN_MAX 
ISL_TOKEN_RAT 
ISL_TOKEN_TRUE 
ISL_TOKEN_FALSE 
ISL_TOKEN_CEILD 
ISL_TOKEN_FLOORD 
ISL_TOKEN_MOD 
ISL_TOKEN_STRING 
ISL_TOKEN_MAP 
ISL_TOKEN_AFF 
ISL_TOKEN_CEIL 
ISL_TOKEN_FLOOR 
ISL_TOKEN_IMPLIES 
ISL_TOKEN_INT_DIV 
ISL_TOKEN_LAST 

Definition at line 24 of file stream.h.

Function Documentation

◆ isl_stream_eat()

◆ isl_stream_eat_if_available()

◆ isl_stream_error()

void isl_stream_error ( __isl_keep isl_stream * s,
struct isl_token * tok,
char * msg )

◆ isl_stream_flush_tokens()

void isl_stream_flush_tokens ( __isl_keep isl_stream * s)

Definition at line 789 of file isl_stream.c.

References __isl_keep, and isl_token_free().

◆ isl_stream_free()

◆ isl_stream_get_ctx()

◆ isl_stream_is_empty()

int isl_stream_is_empty ( __isl_keep isl_stream * s)

◆ isl_stream_new_file()

◆ isl_stream_new_str()

__isl_give isl_stream * isl_stream_new_str ( isl_ctx * ctx,
const char * str )

Definition at line 228 of file isl_stream.c.

References __isl_give, isl_stream_new(), isl_token::s, and str.

Referenced by FN().

◆ isl_stream_next_token()

◆ isl_stream_next_token_is()

◆ isl_stream_next_token_on_same_line()

struct isl_token * isl_stream_next_token_on_same_line ( __isl_keep isl_stream * s)

◆ isl_stream_push_token()

◆ isl_stream_read_basic_set()

◆ isl_stream_read_id()

◆ isl_stream_read_ident_if_available()

char * isl_stream_read_ident_if_available ( __isl_keep isl_stream * s)

◆ isl_stream_read_map()

__isl_give isl_map * isl_stream_read_map ( __isl_keep isl_stream * s)

◆ isl_stream_read_multi_aff()

◆ isl_stream_read_obj()

struct isl_obj isl_stream_read_obj ( __isl_keep isl_stream * s)

Definition at line 3135 of file isl_input.c.

References __isl_keep, isl_stream_read_obj(), and obj_read().

Referenced by ISL_ARG_CHOICE(), isl_stream_read_obj(), and main().

◆ isl_stream_read_pw_qpolynomial()

__isl_give isl_pw_qpolynomial * isl_stream_read_pw_qpolynomial ( __isl_keep isl_stream * s)

◆ isl_stream_read_schedule()

◆ isl_stream_read_set()

◆ isl_stream_read_union_map()

◆ isl_stream_read_union_set()

◆ isl_stream_read_val()

◆ isl_stream_register_keyword()

◆ isl_stream_skip_line()

int isl_stream_skip_line ( __isl_keep isl_stream * s)

Definition at line 376 of file isl_stream.c.

References __isl_keep, and isl_stream_getc().

Referenced by next_token().

◆ isl_stream_yaml_next()

◆ isl_stream_yaml_read_end_mapping()

◆ isl_stream_yaml_read_end_sequence()

◆ isl_stream_yaml_read_start_mapping()

◆ isl_stream_yaml_read_start_sequence()

◆ isl_token_free()

◆ isl_token_get_str()

◆ isl_token_get_type()

int isl_token_get_type ( struct isl_token * tok)

◆ isl_token_get_val()

__isl_give isl_val * isl_token_get_val ( isl_ctx * ctx,
struct isl_token * tok )

◆ isl_token_has_str()

isl_bool isl_token_has_str ( struct isl_token * tok)

Definition at line 106 of file isl_stream.c.

References isl_bool_error, isl_bool_ok(), isl_token::s, and isl_token::u.

Referenced by KEY_EXTRACT().