1 <?php 2 /************************************************************************************* 3 * cil.php 4 * -------- 5 * Author: Marcus Griep (neoeinstein+GeSHi (at) gmail.com) 6 * Copyright: (c) 2007 Marcus Griep (http://www.xpdm.us) 7 * Release Version: 1.0.8.3 8 * Date Started: 2007/10/24 9 * 10 * CIL (Common Intermediate Language) language file for GeSHi. 11 * 12 * CHANGES 13 * ------- 14 * 2004/10/24 (1.0.8) 15 * - First Release 16 * 17 * TODO (updated 2007/10/24) 18 * ------------------------- 19 * 20 ************************************************************************************* 21 * 22 * This file is part of GeSHi. 23 * 24 * GeSHi is free software; you can redistribute it and/or modify 25 * it under the terms of the GNU General Public License as published by 26 * the Free Software Foundation; either version 2 of the License, or 27 * (at your option) any later version. 28 * 29 * GeSHi is distributed in the hope that it will be useful, 30 * but WITHOUT ANY WARRANTY; without even the implied warranty of 31 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 32 * GNU General Public License for more details. 33 * 34 * You should have received a copy of the GNU General Public License 35 * along with GeSHi; if not, write to the Free Software 36 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 37 * 38 ************************************************************************************/ 39 40 $language_data = array ( 41 'LANG_NAME' => 'CIL', 42 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 43 'COMMENT_SINGLE' => array('//'), 44 'COMMENT_MULTI' => array(), 45 'QUOTEMARKS' => array('"'), 46 'ESCAPE_CHAR' => '\\', 47 'KEYWORDS' => array( 48 1 => array(//Dotted 49 '.zeroinit', '.vtfixup', '.vtentry', '.vtable', '.ver', '.try', '.subsystem', '.size', '.set', '.removeon', 50 '.publickeytoken', '.publickey', '.property', '.permissionset', '.permission', '.pdirect', '.param', '.pack', 51 '.override', '.other', '.namespace', '.mresource', '.module', '.method', '.maxstack', '.manifestres', '.locals', 52 '.localized', '.locale', '.line', '.language', '.import', '.imagebase', '.hash', '.get', '.fire', '.file', '.field', 53 '.export', '.event', '.entrypoint', '.emitbyte', '.data', '.custom', '.culture', '.ctor', '.corflags', '.class', 54 '.cctor', '.assembly', '.addon' 55 ), 56 2 => array(//Attributes 57 'wrapper', 'with', 'winapi', 'virtual', 'vector', 'vararg', 'value', 'userdefined', 'unused', 'unmanagedexp', 58 'unmanaged', 'unicode', 'to', 'tls', 'thiscall', 'synchronized', 'struct', 'strict', 'storage', 'stdcall', 59 'static', 'specialname', 'special', 'serializable', 'sequential', 'sealed', 'runtime', 'rtspecialname', 'request', 60 'reqsecobj', 'reqrefuse', 'reqopt', 'reqmin', 'record', 'public', 'privatescope', 'private', 'preservesig', 61 'prejitgrant', 'prejitdeny', 'platformapi', 'pinvokeimpl', 'pinned', 'permitonly', 'out', 'optil', 'opt', 62 'notserialized', 'notremotable', 'not_in_gc_heap', 'noprocess', 'noncaslinkdemand', 'noncasinheritance', 63 'noncasdemand', 'nometadata', 'nomangle', 'nomachine', 'noinlining', 'noappdomain', 'newslot', 'nested', 'native', 64 'modreq', 'modopt', 'marshal', 'managed', 'literal', 'linkcheck', 'lcid', 'lasterr', 'internalcall', 'interface', 65 'instance', 'initonly', 'init', 'inheritcheck', 'in', 'import', 'implicitres', 'implicitcom', 'implements', 66 'illegal', 'il', 'hidebysig', 'handler', 'fromunmanaged', 'forwardref', 'fixed', 'finally', 'final', 'filter', 67 'filetime', 'field', 'fault', 'fastcall', 'famorassem', 'family', 'famandassem', 'extern', 'extends', 'explicit', 68 'error', 'enum', 'endmac', 'deny', 'demand', 'default', 'custom', 'compilercontrolled', 'clsid', 'class', 'cil', 69 'cf', 'cdecl', 'catch', 'beforefieldinit', 'autochar', 'auto', 'at', 'assert', 'assembly', 'as', 'any', 'ansi', 70 'alignment', 'algorithm', 'abstract' 71 ), 72 3 => array(//Types 73 'wchar', 'void', 'variant', 'unsigned', 'valuetype', 'typedref', 'tbstr', 'sysstring', 'syschar', 'string', 74 'streamed_object', 'stream', 'stored_object', 'safearray', 'objectref', 'object', 'nullref', 'method', 'lpwstr', 75 'lpvoid', 'lptstr', 'lpstruct', 'lpstr', 'iunknown', 'int64', 'int32', 'int16', 'int8', 'int', 'idispatch', 76 'hresult', 'float64', 'float32', 'float', 'decimal', 'date', 'currency', 'char', 'carray', 'byvalstr', 77 'bytearray', 'boxed', 'bool', 'blob_object', 'blob', 'array' 78 ), 79 4 => array(//Prefix 80 'volatile', 'unaligned', 'tail', 'readonly', 'no', 'constrained' 81 ), 82 5 => array(//Suffix 83 'un', 'u8', 'u4', 'u2', 'u1', 'u', 's', 'ref', 'r8', 'r4', 'm1', 'i8', 'i4', 'i2', 'i1', 'i'#, '.8', '.7', '.6', '.5', '.4', '.3', '.2', '.1', '.0' 84 ), 85 6 => array(//Base 86 'xor', 'switch', 'sub', 'stloc', 87 'stind', 'starg', 88 'shr', 'shl', 'ret', 'rem', 'pop', 'or', 'not', 'nop', 'neg', 'mul', 89 'localloc', 'leave', 'ldnull', 'ldloca', 90 'ldloc', 'ldind', 'ldftn', 'ldc', 'ldarga', 91 'ldarg', 'jmp', 'initblk', 'endfinally', 'endfilter', 92 'endfault', 'dup', 'div', 'cpblk', 'conv', 'clt', 'ckfinite', 'cgt', 'ceq', 'calli', 93 'call', 'brzero', 'brtrue', 'brnull', 'brinst', 94 'brfalse', 'break', 'br', 'bne', 'blt', 'ble', 'bgt', 'bge', 'beq', 'arglist', 95 'and', 'add' 96 ), 97 7 => array(//Object 98 'unbox.any', 'unbox', 'throw', 'stsfld', 'stobj', 'stfld', 'stelem', 'sizeof', 'rethrow', 'refanyval', 'refanytype', 'newobj', 99 'newarr', 'mkrefany', 'ldvirtftn', 'ldtoken', 'ldstr', 'ldsflda', 'ldsfld', 'ldobj', 'ldlen', 'ldflda', 'ldfld', 100 'ldelema', 'ldelem', 'isinst', 'initobj', 'cpobj', 'castclass', 101 'callvirt', 'callmostderived', 'box' 102 ), 103 8 => array(//Other 104 'prefixref', 'prefix7', 'prefix6', 'prefix5', 'prefix4', 'prefix3', 'prefix2', 'prefix1', 'prefix0' 105 ), 106 9 => array(//Literal 107 'true', 'null', 'false' 108 ), 109 10 => array(//Comment-like 110 '#line', '^THE_END^' 111 ) 112 ), 113 'SYMBOLS' => array( 114 '(', ')', '[', ']', '{', '}', '!', '!!' 115 ), 116 'CASE_SENSITIVE' => array( 117 GESHI_COMMENTS => false, 118 1 => true, 119 2 => true, 120 3 => true, 121 4 => true, 122 5 => true, 123 6 => true, 124 7 => true, 125 8 => true, 126 9 => true, 127 10 => true 128 ), 129 'STYLES' => array( 130 'KEYWORDS' => array( 131 1 => 'color:maroon;font-weight:bold;', 132 2 => 'color:blue;font-weight:bold;', 133 3 => 'color:purple;font-weight:bold;', 134 4 => 'color:teal;', 135 5 => 'color:blue;', 136 6 => 'color:blue;', 137 7 => 'color:blue;', 138 8 => 'color:blue;', 139 9 => 'color:00008B', 140 10 => 'color:gray' 141 ), 142 'COMMENTS' => array( 143 0 => 'color:gray;font-style:italic;' 144 ), 145 'ESCAPE_CHAR' => array( 146 0 => 'color: #008000; font-weight: bold;' 147 ), 148 'BRACKETS' => array( 149 0 => 'color: #006400;' 150 ), 151 'STRINGS' => array( 152 0 => 'color: #008000;' 153 ), 154 'NUMBERS' => array( 155 0 => 'color: #00008B;' 156 ), 157 'METHODS' => array( 158 1 => 'color: #000033;' 159 ), 160 'SYMBOLS' => array( 161 0 => 'color: #006400;' 162 ), 163 'REGEXPS' => array( 164 0 => 'color:blue;' 165 ), 166 'SCRIPT' => array( 167 ) 168 ), 169 'URLS' => array( 170 1 => '', 171 2 => '', 172 3 => '', 173 4 => '', 174 5 => '', 175 6 => '', 176 7 => '', 177 8 => '', 178 9 => '', 179 10 => '' 180 ), 181 'OOLANG' => true, 182 'OBJECT_SPLITTERS' => array( 183 1 => '::' 184 ), 185 'REGEXPS' => array( 186 0 => '(?<=ldc\\.i4\\.)[0-8]|(?<=(?:ldarg|ldloc|stloc)\\.)[0-3]' # Pickup the opcodes that end with integers 187 ), 188 'STRICT_MODE_APPLIES' => GESHI_NEVER, 189 'SCRIPT_DELIMITERS' => array( 190 ), 191 'HIGHLIGHT_STRICT_BLOCK' => array( 192 ), 193 'TAB_WIDTH' => 4 194 ); 195 196 ?> 197