00001 /* 00002 * Copyright (c) 1998 by Tech Soft 3D, LLC. 00003 * The information contained herein is confidential and proprietary to 00004 * Tech Soft 3D, LLC., and considered a trade secret as defined under 00005 * civil and criminal statutes. Tech Soft 3D shall pursue its civil 00006 * and criminal remedies in the event of unauthorized use or misappropriation 00007 * of its trade secrets. Use of this information by anyone other than 00008 * authorized employees of Tech Soft 3D, LLC. is granted only under a 00009 * written non-disclosure agreement, expressly prescribing the scope and 00010 * manner of such use. 00011 * 00012 * $Id: path_8h-source.html,v 1.29 2008-03-10 07:09:28 stage Exp $ 00013 */ 00014 00015 #ifndef PATH_DEFINED 00016 00017 #define EXPAND 1 /* expand referenced aliases */ 00018 #define WILDCARDS 2 /* *,%... are OK in general */ 00019 #define QUALIFIERS 4 /* {}<>! are OK */ 00020 00021 struct HT_Path_Token { 00022 HT_Path_Token *next; 00023 int type; 00024 HT_Name letters; /* if type = PATH_LETTERS */ 00025 HT_Path_Token *expansion; /* if type = PATH_ALIASREF */ 00026 /* (only valid during parse!) */ 00027 HT_Key key; /* if type = PATH_KEYREF */ 00028 int level; /* if type == PATH_INCLUDE* or 00029 PATH_STYLE* */ 00030 bool seen_wildcard; 00031 }; 00032 00033 #define PATH_DOTDOTDOT 0 00034 #define PATH_DOT 1 00035 #define PATH_SLASH 2 00036 #define PATH_PERCENT 3 00037 #define PATH_UPARROW 4 00038 #define PATH_ALIASREF 5 00039 #define PATH_COMMA 6 00040 #define PATH_LEFTP 7 00041 #define PATH_RIGHTP 8 00042 #define PATH_LETTERS 9 00043 #define PATH_SPLAT 10 00044 #define PATH_STYLES 11 00045 #define PATH_STYLED_BY 12 00046 #define PATH_INCLUDES 13 00047 #define PATH_INCLUDED_BY 14 00048 #define PATH_EXCEPT 15 00049 #define PATH_KEYREF 16 00050 00051 #define PATH_DEFINED 00052 #endif