From 0d35bf194a386cc6f7ad238bb356e65ed45a6062 Mon Sep 17 00:00:00 2001 From: Tavian Barnes Date: Mon, 23 Nov 2009 16:15:57 -0500 Subject: Begin bison implementation of parser. --- dimension/tokenize.h | 496 +-------------------------------------------------- 1 file changed, 2 insertions(+), 494 deletions(-) (limited to 'dimension/tokenize.h') diff --git a/dimension/tokenize.h b/dimension/tokenize.h index 14010f8..b9eaf04 100644 --- a/dimension/tokenize.h +++ b/dimension/tokenize.h @@ -21,501 +21,9 @@ #define TOKENIZE_H #include "../libdimension/dimension.h" +#include "bison.h" -typedef enum { - /* Punctuation */ - DMNSN_T_LBRACE, /* { */ - DMNSN_T_RBRACE, /* } */ - DMNSN_T_LPAREN, /* ( */ - DMNSN_T_RPAREN, /* ) */ - DMNSN_T_LBRACKET, /* [ */ - DMNSN_T_RBRACKET, /* ] */ - DMNSN_T_PLUS, /* + */ - DMNSN_T_MINUS, /* - */ - DMNSN_T_STAR, /* * */ - DMNSN_T_SLASH, /* / */ - DMNSN_T_COMMA, /* , */ - DMNSN_T_SEMICOLON, /* ; */ - DMNSN_T_QUESTION, /* ? */ - DMNSN_T_COLON, /* : */ - DMNSN_T_AND, /* & */ - DMNSN_T_DOT, /* . */ - DMNSN_T_PIPE, /* | */ - DMNSN_T_LESS, /* < */ - DMNSN_T_GREATER, /* > */ - DMNSN_T_BANG, /* ! */ - DMNSN_T_EQUALS, /* = */ - DMNSN_T_LESS_EQUAL, /* <= */ - DMNSN_T_GREATER_EQUAL, /* >= */ - DMNSN_T_NOT_EQUAL, /* != */ - - /* Numeric values */ - DMNSN_T_INTEGER, - DMNSN_T_FLOAT, - - /* Keywords */ - DMNSN_T_AA_LEVEL, - DMNSN_T_AA_THRESHOLD, - DMNSN_T_ABS, - DMNSN_T_ABSORPTION, - DMNSN_T_ACCURACY, - DMNSN_T_ACOS, - DMNSN_T_ACOSH, - DMNSN_T_ADAPTIVE, - DMNSN_T_ADC_BAILOUT, - DMNSN_T_AGATE, - DMNSN_T_AGATE_TURB, - DMNSN_T_ALL, - DMNSN_T_ALL_INTERSECTIONS, - DMNSN_T_ALPHA, - DMNSN_T_ALTITUDE, - DMNSN_T_ALWAYS_SAMPLE, - DMNSN_T_AMBIENT, - DMNSN_T_AMBIENT_LIGHT, - DMNSN_T_ANGLE, - DMNSN_T_APERTURE, - DMNSN_T_APPEND, - DMNSN_T_ARC_ANGLE, - DMNSN_T_AREA_LIGHT, - DMNSN_T_ARRAY, - DMNSN_T_ASC, - DMNSN_T_ASCII, - DMNSN_T_ASIN, - DMNSN_T_ASINH, - DMNSN_T_ASSUMED_GAMMA, - DMNSN_T_ATAN, - DMNSN_T_ATAN2, - DMNSN_T_ATANH, - DMNSN_T_AUTOSTOP, - DMNSN_T_AVERAGE, - DMNSN_T_B_SPLINE, - DMNSN_T_BACKGROUND, - DMNSN_T_BEZIER_SPLINE, - DMNSN_T_BICUBIC_PATCH, - DMNSN_T_BLACK_HOLE, - DMNSN_T_BLOB, - DMNSN_T_BLUE, - DMNSN_T_BLUR_SAMPLES, - DMNSN_T_BOUNDED_BY, - DMNSN_T_BOX, - DMNSN_T_BOXED, - DMNSN_T_BOZO, - DMNSN_T_BRICK, - DMNSN_T_BRICK_SIZE, - DMNSN_T_BRIGHTNESS, - DMNSN_T_BRILLIANCE, - DMNSN_T_BUMP_MAP, - DMNSN_T_BUMP_SIZE, - DMNSN_T_BUMPS, - DMNSN_T_CAMERA, - DMNSN_T_CAUSTICS, - DMNSN_T_CEIL, - DMNSN_T_CELLS, - DMNSN_T_CHARSET, - DMNSN_T_CHECKER, - DMNSN_T_CHR, - DMNSN_T_CIRCULAR, - DMNSN_T_CLIPPED_BY, - DMNSN_T_CLOCK, - DMNSN_T_CLOCK_DELTA, - DMNSN_T_CLOCK_ON, - DMNSN_T_COLLECT, - DMNSN_T_COLOR, - DMNSN_T_COLOR_MAP, - DMNSN_T_COMPONENT, - DMNSN_T_COMPOSITE, - DMNSN_T_CONCAT, - DMNSN_T_CONE, - DMNSN_T_CONFIDENCE, - DMNSN_T_CONIC_SWEEP, - DMNSN_T_CONSERVE_ENERGY, - DMNSN_T_CONTAINED_BY, - DMNSN_T_CONTROL0, - DMNSN_T_CONTROL1, - DMNSN_T_COORDS, - DMNSN_T_COS, - DMNSN_T_COSH, - DMNSN_T_COUNT, - DMNSN_T_CRACKLE, - DMNSN_T_CRAND, - DMNSN_T_CUBE, - DMNSN_T_CUBIC, - DMNSN_T_CUBIC_SPLINE, - DMNSN_T_CUBIC_WAVE, - DMNSN_T_CUTAWAY_TEXTURES, - DMNSN_T_CYLINDER, - DMNSN_T_CYLINDRICAL, - DMNSN_T_DEFINED, - DMNSN_T_DEGREES, - DMNSN_T_DENSITY, - DMNSN_T_DENSITY_FILE, - DMNSN_T_DENSITY_MAP, - DMNSN_T_DENTS, - DMNSN_T_DF3, - DMNSN_T_DIFFERENCE, - DMNSN_T_DIFFUSE, - DMNSN_T_DIMENSION_SIZE, - DMNSN_T_DIMENSIONS, - DMNSN_T_DIRECTION, - DMNSN_T_DISC, - DMNSN_T_DISPERSION, - DMNSN_T_DISPERSION_SAMPLES, - DMNSN_T_DIST_EXP, - DMNSN_T_DISTANCE, - DMNSN_T_DIV, - DMNSN_T_DOUBLE_ILLUMINATE, - DMNSN_T_ECCENTRICITY, - DMNSN_T_EMISSION, - DMNSN_T_ERROR_BOUND, - DMNSN_T_EVALUATE, - DMNSN_T_EXP, - DMNSN_T_EXPAND_THRESHOLDS, - DMNSN_T_EXPONENT, - DMNSN_T_EXTERIOR, - DMNSN_T_EXTINCTION, - DMNSN_T_FACE_INDICES, - DMNSN_T_FACETS, - DMNSN_T_FADE_COLOR, - DMNSN_T_FADE_DISTANCE, - DMNSN_T_FADE_POWER, - DMNSN_T_FALLOFF, - DMNSN_T_FALLOFF_ANGLE, - DMNSN_T_FALSE, - DMNSN_T_FILE_EXISTS, - DMNSN_T_FILTER, - DMNSN_T_FINAL_CLOCK, - DMNSN_T_FINAL_FRAME, - DMNSN_T_FINISH, - DMNSN_T_FISHEYE, - DMNSN_T_FLATNESS, - DMNSN_T_FLIP, - DMNSN_T_FLOOR, - DMNSN_T_FOCAL_POINT, - DMNSN_T_FOG, - DMNSN_T_FOG_ALT, - DMNSN_T_FOG_OFFSET, - DMNSN_T_FOG_TYPE, - DMNSN_T_FORM, - DMNSN_T_FRAME_NUMBER, - DMNSN_T_FREQUENCY, - DMNSN_T_FRESNEL, - DMNSN_T_FUNCTION, - DMNSN_T_GATHER, - DMNSN_T_GIF, - DMNSN_T_GLOBAL_LIGHTS, - DMNSN_T_GLOBAL_SETTINGS, - DMNSN_T_GRADIENT, - DMNSN_T_GRANITE, - DMNSN_T_GRAY, - DMNSN_T_GRAY_THRESHOLD, - DMNSN_T_GREEN, - DMNSN_T_HEIGHT_FIELD, - DMNSN_T_HEXAGON, - DMNSN_T_HF_GRAY_16, - DMNSN_T_HIERARCHY, - DMNSN_T_HYPERCOMPLEX, - DMNSN_T_HOLLOW, - DMNSN_T_IFF, - DMNSN_T_IMAGE_HEIGHT, - DMNSN_T_IMAGE_MAP, - DMNSN_T_IMAGE_PATTERN, - DMNSN_T_IMAGE_WIDTH, - DMNSN_T_INITIAL_CLOCK, - DMNSN_T_INITIAL_FRAME, - DMNSN_T_INSIDE, - DMNSN_T_INSIDE_VECTOR, - DMNSN_T_INT, - DMNSN_T_INTERIOR, - DMNSN_T_INTERIOR_TEXTURE, - DMNSN_T_INTERNAL, - DMNSN_T_INTERPOLATE, - DMNSN_T_INTERSECTION, - DMNSN_T_INTERVALS, - DMNSN_T_INVERSE, - DMNSN_T_IOR, - DMNSN_T_IRID, - DMNSN_T_IRID_WAVELENGTH, - DMNSN_T_ISOSURFACE, - DMNSN_T_JITTER, - DMNSN_T_JPEG, - DMNSN_T_JULIA, - DMNSN_T_JULIA_FRACTAL, - DMNSN_T_LAMBDA, - DMNSN_T_LATHE, - DMNSN_T_LEOPARD, - DMNSN_T_LIGHT_GROUP, - DMNSN_T_LIGHT_SOURCE, - DMNSN_T_LINEAR_SPLINE, - DMNSN_T_LINEAR_SWEEP, - DMNSN_T_LN, - DMNSN_T_LOAD_FILE, - DMNSN_T_LOCATION, - DMNSN_T_LOG, - DMNSN_T_LOOK_AT, - DMNSN_T_LOOKS_LIKE, - DMNSN_T_LOW_ERROR_FACTOR, - DMNSN_T_MAGNET, - DMNSN_T_MAJOR_RADIUS, - DMNSN_T_MANDEL, - DMNSN_T_MAP_TYPE, - DMNSN_T_MARBLE, - DMNSN_T_MATERIAL, - DMNSN_T_MATERIAL_MAP, - DMNSN_T_MATRIX, - DMNSN_T_MAX, - DMNSN_T_MAX_EXTENT, - DMNSN_T_MAX_GRADIENT, - DMNSN_T_MAX_INTERSECTIONS, - DMNSN_T_MAX_ITERATION, - DMNSN_T_MAX_SAMPLE, - DMNSN_T_MAX_TRACE, - DMNSN_T_MAX_TRACE_LEVEL, - DMNSN_T_MEDIA, - DMNSN_T_MEDIA_ATTENUATION, - DMNSN_T_MEDIA_INTERACTION, - DMNSN_T_MERGE, - DMNSN_T_MESH, - DMNSN_T_MESH2, - DMNSN_T_METALLIC, - DMNSN_T_METHOD, - DMNSN_T_METRIC, - DMNSN_T_MIN, - DMNSN_T_MIN_EXTENT, - DMNSN_T_MINIMUM_REUSE, - DMNSN_T_MOD, - DMNSN_T_MORTAR, - DMNSN_T_NATURAL_SPLINE, - DMNSN_T_NEAREST_COUNT, - DMNSN_T_NO, - DMNSN_T_NO_BUMP_SCALE, - DMNSN_T_NO_IMAGE, - DMNSN_T_NO_REFLECTION, - DMNSN_T_NO_SHADOW, - DMNSN_T_NOISE_GENERATOR, - DMNSN_T_NORMAL, - DMNSN_T_NORMAL_INDICES, - DMNSN_T_NORMAL_MAP, - DMNSN_T_NORMAL_VECTORS, - DMNSN_T_NUMBER_OF_WAVES, - DMNSN_T_OBJECT, - DMNSN_T_OCTAVES, - DMNSN_T_OFF, - DMNSN_T_OFFSET, - DMNSN_T_OMEGA, - DMNSN_T_OMNIMAX, - DMNSN_T_ON, - DMNSN_T_ONCE, - DMNSN_T_ONION, - DMNSN_T_OPEN, - DMNSN_T_ORIENT, - DMNSN_T_ORIENTATION, - DMNSN_T_ORTHOGRAPHIC, - DMNSN_T_PANORAMIC, - DMNSN_T_PARALLEL, - DMNSN_T_PARAMETRIC, - DMNSN_T_PASS_THROUGH, - DMNSN_T_PATTERN, - DMNSN_T_PERSPECTIVE, - DMNSN_T_PGM, - DMNSN_T_PHASE, - DMNSN_T_PHONG, - DMNSN_T_PHONG_SIZE, - DMNSN_T_PHOTONS, - DMNSN_T_PI, - DMNSN_T_PIGMENT, - DMNSN_T_PIGMENT_MAP, - DMNSN_T_PIGMENT_PATTERN, - DMNSN_T_PLANAR, - DMNSN_T_PLANE, - DMNSN_T_PNG, - DMNSN_T_POINT_AT, - DMNSN_T_POLY, - DMNSN_T_POLY_WAVE, - DMNSN_T_POLYGON, - DMNSN_T_POT, - DMNSN_T_POW, - DMNSN_T_PPM, - DMNSN_T_PRECISION, - DMNSN_T_PRECOMPUTE, - DMNSN_T_PRETRACE_END, - DMNSN_T_PRETRACE_START, - DMNSN_T_PRISM, - DMNSN_T_PROD, - DMNSN_T_PROJECTED_THROUGH, - DMNSN_T_PWR, - DMNSN_T_QUADRATIC_SPLINE, - DMNSN_T_QUADRIC, - DMNSN_T_QUARTIC, - DMNSN_T_QUATERNION, - DMNSN_T_QUICK_COLOR, - DMNSN_T_QUILTED, - DMNSN_T_RADIAL, - DMNSN_T_RADIANS, - DMNSN_T_RADIOSITY, - DMNSN_T_RADIUS, - DMNSN_T_RAINBOW, - DMNSN_T_RAMP_WAVE, - DMNSN_T_RAND, - DMNSN_T_RATIO, - DMNSN_T_RECIPROCAL, - DMNSN_T_RECURSION_LIMIT, - DMNSN_T_RED, - DMNSN_T_REFLECTION, - DMNSN_T_REFLECTION_EXPONENT, - DMNSN_T_REFRACTION, - DMNSN_T_REPEAT, - DMNSN_T_RGB, - DMNSN_T_RGBF, - DMNSN_T_RGBFT, - DMNSN_T_RGBT, - DMNSN_T_RIGHT, - DMNSN_T_RIPPLES, - DMNSN_T_ROTATE, - DMNSN_T_ROUGHNESS, - DMNSN_T_SAMPLES, - DMNSN_T_SAVE_FILE, - DMNSN_T_SCALE, - DMNSN_T_SCALLOP_WAVE, - DMNSN_T_SCATTERING, - DMNSN_T_SEED, - DMNSN_T_SELECT, - DMNSN_T_SHADOWLESS, - DMNSN_T_SIN, - DMNSN_T_SINE_WAVE, - DMNSN_T_SINH, - DMNSN_T_SIZE, - DMNSN_T_SKY, - DMNSN_T_SKY_SPHERE, - DMNSN_T_SLICE, - DMNSN_T_SLOPE, - DMNSN_T_SLOPE_MAP, - DMNSN_T_SMOOTH, - DMNSN_T_SMOOTH_TRIANGLE, - DMNSN_T_SOLID, - DMNSN_T_SOR, - DMNSN_T_SPACING, - DMNSN_T_SPECULAR, - DMNSN_T_SPHERE, - DMNSN_T_SPHERE_SWEEP, - DMNSN_T_SPHERICAL, - DMNSN_T_SPIRAL1, - DMNSN_T_SPIRAL2, - DMNSN_T_SPLINE, - DMNSN_T_SPLIT_UNION, - DMNSN_T_SPOTLIGHT, - DMNSN_T_SPOTTED, - DMNSN_T_SQR, - DMNSN_T_SQRT, - DMNSN_T_STR, - DMNSN_T_STRCMP, - DMNSN_T_STRENGTH, - DMNSN_T_STRLEN, - DMNSN_T_STRLWR, - DMNSN_T_STRUPR, - DMNSN_T_STURM, - DMNSN_T_SUBSTR, - DMNSN_T_SUM, - DMNSN_T_SUPERELLIPSOID, - DMNSN_T_SYS, - DMNSN_T_T, - DMNSN_T_TAN, - DMNSN_T_TANH, - DMNSN_T_TARGET, - DMNSN_T_TEXT, - DMNSN_T_TEXTURE, - DMNSN_T_TEXTURE_LIST, - DMNSN_T_TEXTURE_MAP, - DMNSN_T_TGA, - DMNSN_T_THICKNESS, - DMNSN_T_THRESHOLD, - DMNSN_T_TIFF, - DMNSN_T_TIGHTNESS, - DMNSN_T_TILE2, - DMNSN_T_TILES, - DMNSN_T_TOLERANCE, - DMNSN_T_TOROIDAL, - DMNSN_T_TORUS, - DMNSN_T_TRACE, - DMNSN_T_TRANSFORM, - DMNSN_T_TRANSLATE, - DMNSN_T_TRANSMIT, - DMNSN_T_TRIANGLE, - DMNSN_T_TRIANGLE_WAVE, - DMNSN_T_TRUE, - DMNSN_T_TTF, - DMNSN_T_TURB_DEPTH, - DMNSN_T_TURBULENCE, - DMNSN_T_TYPE, - DMNSN_T_U, - DMNSN_T_U_STEPS, - DMNSN_T_ULTRA_WIDE_ANGLE, - DMNSN_T_UNION, - DMNSN_T_UP, - DMNSN_T_USE_ALPHA, - DMNSN_T_USE_COLOR, - DMNSN_T_USE_INDEX, - DMNSN_T_UTF8, - DMNSN_T_UV_INDICES, - DMNSN_T_UV_MAPPING, - DMNSN_T_UV_VECTORS, - DMNSN_T_V, - DMNSN_T_V_STEPS, - DMNSN_T_VAL, - DMNSN_T_VARIANCE, - DMNSN_T_VAXIS_ROTATE, - DMNSN_T_VCROSS, - DMNSN_T_VDOT, - DMNSN_T_VERTEX_VECTORS, - DMNSN_T_VLENGTH, - DMNSN_T_VNORMALIZE, - DMNSN_T_VROTATE, - DMNSN_T_VSTR, - DMNSN_T_VTURBULENCE, - DMNSN_T_WARP, - DMNSN_T_WATER_LEVEL, - DMNSN_T_WAVES, - DMNSN_T_WIDTH, - DMNSN_T_WOOD, - DMNSN_T_WRINKLES, - DMNSN_T_X, - DMNSN_T_Y, - DMNSN_T_YES, - DMNSN_T_Z, - - /* Directives (#declare, etc.) */ - DMNSN_T_BREAK, - DMNSN_T_CASE, - DMNSN_T_DEBUG, - DMNSN_T_DECLARE, - DMNSN_T_DEFAULT, - DMNSN_T_ELSE, - DMNSN_T_END, - DMNSN_T_ERROR, - DMNSN_T_FCLOSE, - DMNSN_T_FOPEN, - DMNSN_T_IF, - DMNSN_T_IFDEF, - DMNSN_T_IFNDEF, - DMNSN_T_INCLUDE, - DMNSN_T_LOCAL, - DMNSN_T_MACRO, - DMNSN_T_RANGE, - DMNSN_T_READ, - DMNSN_T_RENDER, - DMNSN_T_STATISTICS, - DMNSN_T_SWITCH, - DMNSN_T_UNDEF, - DMNSN_T_VERSION, - DMNSN_T_WARNING, - DMNSN_T_WHILE, - DMNSN_T_WRITE, - - /* Identifiers */ - DMNSN_T_IDENTIFIER, - - /* Strings */ - DMNSN_T_STRING, -} dmnsn_token_type; +typedef enum yytokentype dmnsn_token_type; typedef struct dmnsn_token dmnsn_token; -- cgit v1.2.3