#line 2 "common.nonterminals" /************************************************************************* * Copyright (C) 2010 Tavian Barnes * * * * This file is part of Dimension. * * * * Dimension is free software; you can redistribute it and/or modify it * * under the terms of the GNU General Public License as published by the * * Free Software Foundation; either version 3 of the License, or (at * * your option) any later version. * * * * Dimension is distributed in the hope that it will be useful, but * * WITHOUT ANY WARRANTY; without even the implied warranty of * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * * General Public License for more details. * * * * You should have received a copy of the GNU General Public License * * along with this program. If not, see . * *************************************************************************/ /* Fundamental language elements */ %type IDENTIFIER %type STRING /* Transformations */ %type TRANSFORMATION %type TRANSFORMATION_ITEMS %type TRANSFORMATION_ITEM /* The camera */ %type CAMERA %type CAMERA_ITEMS %type CAMERA_ITEM %type CAMERA_TYPE %type CAMERA_VECTOR %type CAMERA_MODIFIER /* Objects */ %type OBJECT %type FINITE_SOLID_OBJECT %type BOX %type CONE %type CYLINDER %type MAYBE_OPEN %type SPHERE %type TORUS %type TORUS_MODIFIERS %type INFINITE_SOLID_OBJECT %type PLANE %type CSG_OBJECT %type UNION %type INTERSECTION %type DIFFERENCE %type MERGE %type OBJECTS %type LIGHT_SOURCE /* Object modifiers */ %type OBJECT_MODIFIERS %type OBJECT_MODIFIER /* Patterns */ %type BLOCK_PATTERN_TYPE %type CONTINUOUS_PATTERN_TYPE %type PATTERN_TYPE /* Textures */ %type TEXTURE %type TEXTURE_ITEMS /* Pigments */ %type PIGMENT %type PIGMENT_BODY %type PIGMENT_TYPE %type PIGMENT_MODIFIERS %type COLOR_LIST2 %type COLOR_MAP %type COLOR_MAP_ENTRIES %type COLOR_MAP_ENTRY %type PIGMENT_LIST2 %type PIGMENT_MAP %type PIGMENT_MAP_ENTRIES %type PIGMENT_MAP_ENTRY %type BITMAP_TYPE /* Finishes */ %type FINISH %type FINISH_ITEMS %type REFLECTION %type REFLECTION_ITEMS /* Interiors */ %type INTERIOR %type INTERIOR_ITEMS /* Floats */ %type FLOAT %type INT %type FLOAT_LITERAL /* Vectors */ %type VECTOR %type VECTOR_LITERAL /* Generalized arithmetic expressions */ %type ARITH_EXPR %type CONDITIONAL %type MAX_LIST %type MIN_LIST /* Colors */ %type COLOR %type COLOR_BODY %type COLOR_VECTOR %type COLOR_KEYWORD_GROUP %type COLOR_KEYWORD_GROUP_INIT