WONKY



LOG | FILES | OVERVIEW


#ifndef WONKY_AUTOMATA_C
#define WONKY_AUTOMATA_C WONKY_AUTOMATA_C
#include <automata.h>

enum Source_Chars compress[256]
	=
	{
		['a']=CHAR_a,
		['b']=CHAR_b,
		['c']=CHAR_c,
		['d']=CHAR_d,
		['e']=CHAR_e,
		['f']=CHAR_f,
		['g']=CHAR_g,
		['h']=CHAR_h,
		['i']=CHAR_i,
		['j']=CHAR_j,
		['k']=CHAR_k,
		['l']=CHAR_l,
		['m']=CHAR_m,
		['n']=CHAR_n,
		['o']=CHAR_o,
		['p']=CHAR_p,
		['q']=CHAR_q,
		['r']=CHAR_r,
		['s']=CHAR_s,
		['t']=CHAR_t,
		['u']=CHAR_u,
		['v']=CHAR_v,
		['w']=CHAR_w,
		['x']=CHAR_x,
		['y']=CHAR_y,
		['z']=CHAR_z,
		['A']=CHAR_A,
		['B']=CHAR_B,
		['C']=CHAR_C,
		['D']=CHAR_D,
		['E']=CHAR_E,
		['F']=CHAR_F,
		['G']=CHAR_G,
		['H']=CHAR_H,
		['I']=CHAR_I,
		['J']=CHAR_J,
		['K']=CHAR_K,
		['L']=CHAR_L,
		['M']=CHAR_M,
		['N']=CHAR_N,
		['O']=CHAR_O,
		['P']=CHAR_P,
		['Q']=CHAR_Q,
		['R']=CHAR_R,
		['S']=CHAR_S,
		['T']=CHAR_T,
		['U']=CHAR_U,
		['V']=CHAR_V,
		['W']=CHAR_W,
		['X']=CHAR_X,
		['Y']=CHAR_Y,
		['Z']=CHAR_Z,
		['0']=CHAR_0,
		['1']=CHAR_1,
		['2']=CHAR_2,
		['3']=CHAR_3,
		['4']=CHAR_4,
		['5']=CHAR_5,
		['6']=CHAR_6,
		['7']=CHAR_7,
		['8']=CHAR_8,
		['9']=CHAR_9,
		['!']=CHAR_EXCLAMATION,
		['"']=CHAR_DOUBLE_QUOTE,
		['#']=CHAR_HASHTAG,
		['%']=CHAR_PERCENT,
		['&']=CHAR_AMPERSANT,
		['\'']=CHAR_SINGLE_QUOTE,
		['(']=CHAR_OPEN_NORMAL,
		[')']=CHAR_CLOSE_NORMAL,
		['*']=CHAR_STAR,
		['+']=CHAR_PLUS,
		[',']=CHAR_COMMA,
		['-']=CHAR_MINUS,
		['.']=CHAR_DOT,
		['/']=CHAR_FORWARD_SLASH,
		[':']=CHAR_COLUMN,
		[';']=CHAR_SEMI_COLUMN,
		['<']=CHAR_LESS,
		['=']=CHAR_EQUAL,
		['>']=CHAR_GREATER,
		['?']=CHAR_QUESTION,
		['[']=CHAR_OPEN_SQUARE,
		['\\']=CHAR_BACKWARD_SLASH,
		['^']=CHAR_HAT,
		['_']=CHAR_UNDERSCORE,
		['{']=CHAR_OPEN_CURLY,
		['|']=CHAR_PIPE,
		['}']=CHAR_CLOSE_CURLY,
		['~']=CHAR_TILDE,
		[' ']=CHAR_SPACE,
		['\t']=CHAR_HORISONTAL_TAB,
		['\v']=CHAR_VERTICAL_TAB,
		['\n']=CHAR_FORM_FEED_TAB, // this name is retarded
	};

struct identifier defined_special_identifier
	=
	{
		.size=sizeof("defined"),
		.data="defined",
		.last_defined_macro_with_this_id=(struct token*)&(struct token_defined_unary_operator){.type=PKW_DEFINE},
		.number_of_translation_unit_where_id_was_last_defined_as_a_macro=0,
		.was_already_expanded_as_a_macro=0,
	};
enum Source_Chars get_ch(const char *str,size_t limit)
{
	return compress[*str];	
}


#endif