llvm/polly/lib/External/isl/include/isl/arg.h

/*
 * Copyright 2008-2009 Katholieke Universiteit Leuven
 *
 * Use of this software is governed by the MIT license
 *
 * Written by Sven Verdoolaege, K.U.Leuven, Departement
 * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
 */

#ifndef ISL_ARG_H
#define ISL_ARG_H

#include <stddef.h>
#include <stdlib.h>

#if defined(__cplusplus)
extern "C" {
#endif

struct isl_arg_choice {};

struct isl_arg_flags {};

enum isl_arg_type {};

struct isl_args;

struct isl_arg {};

struct isl_args {};

#define ISL_ARGS_START(s,name)
#define ISL_ARGS_END

#define ISL_ARG_ALIAS(l)
#define ISL_ARG_ARG(st,f,a,d)
#define ISL_ARG_FOOTER(h)
#define ISL_ARG_CHOICE(st,f,s,l,c,d,h)
#define ISL_ARG_OPT_CHOICE(st,f,s,l,c,d,ds,h)
#define ISL_ARG_PHANTOM_USER_CHOICE_F(s,l,c,setter,d,h,fl)
#define ISL_ARG_USER_OPT_CHOICE(st,f,s,l,c,setter,d,ds,h)
#define _ISL_ARG_BOOL_F(o,s,l,setter,d,h,fl)
#define ISL_ARG_BOOL_F(st,f,s,l,d,h,fl)
#define ISL_ARG_BOOL(st,f,s,l,d,h)
#define ISL_ARG_PHANTOM_BOOL_F(s,l,setter,h,fl)
#define ISL_ARG_PHANTOM_BOOL(s,l,setter,h)
#define ISL_ARG_INT_F(st,f,s,l,a,d,h,fl)
#define ISL_ARG_INT(st,f,s,l,a,d,h)
#define ISL_ARG_LONG(st,f,s,lo,d,h)
#define ISL_ARG_USER_LONG(st,f,s,lo,setter,d,h)
#define ISL_ARG_OPT_LONG(st,f,s,lo,d,ds,h)
#define ISL_ARG_ULONG(st,f,s,l,d,h)
#define ISL_ARG_STR_F(st,f,s,l,a,d,h,fl)
#define ISL_ARG_STR(st,f,s,l,a,d,h)
#define ISL_ARG_STR_LIST(st,f_n,f_l,s,l,a,h)
#define _ISL_ARG_CHILD(o,l,c,h,fl)
#define ISL_ARG_CHILD(st,f,l,c,h)
#define ISL_ARG_GROUP_F(l,c,h,fl)
#define ISL_ARG_GROUP(l,c,h)
#define ISL_ARG_FLAGS(st,f,s,l,c,d,h)
#define ISL_ARG_USER(st,f,i,c)
#define ISL_ARG_VERSION(print)

#define ISL_ARG_ALL
#define ISL_ARG_SKIP_HELP

void isl_args_set_defaults(struct isl_args *args, void *opt);
void isl_args_free(struct isl_args *args, void *opt);
int isl_args_parse(struct isl_args *args, int argc, char **argv, void *opt,
	unsigned flags);

#define ISL_ARG_DECL(prefix,st,args)

#define ISL_ARG_DEF(prefix,st,args)

#if defined(__cplusplus)
}
#endif

#endif