1<?php 2/************************************************************************************* 3 * haxe.php 4 * -------- 5 * Author: Andy Li (andy@onthewings.net) 6 * John Liao (colorhook@gmail.com) 7 * Copyright: (c) 2012 onthewings (http://www.onthewings.net/) 8 * 2010 colorhook (http://colorhook.com/) 9 * Release Version: 1.0.9.1 10 * Date Started: 2010/10/05 11 * 12 * Haxe language file for GeSHi. 13 * Haxe version: 2.10 14 ************************************************************************************* 15 * 16 * This file is part of GeSHi. 17 * 18 * GeSHi is free software; you can redistribute it and/or modify 19 * it under the terms of the GNU General Public License as published by 20 * the Free Software Foundation; either version 2 of the License, or 21 * (at your option) any later version. 22 * 23 * GeSHi is distributed in the hope that it will be useful, 24 * but WITHOUT ANY WARRANTY; without even the implied warranty of 25 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 26 * GNU General Public License for more details. 27 * 28 * You should have received a copy of the GNU General Public License 29 * along with GeSHi; if not, write to the Free Software 30 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 31 * 32 ************************************************************************************/ 33 34$language_data = array ( 35 'LANG_NAME' => 'Haxe', 36 'COMMENT_SINGLE' => array(1 => '//'), 37 'COMMENT_MULTI' => array('/*' => '*/'), 38 'COMMENT_REGEXP' => array( 39 //Import and Package directives (Basic Support only) 40 2 => '/(?:(?<=import[\\n\\s])|(?<=using[\\n\\s])|(?<=package[\\n\\s]))[\\n\\s]*([a-zA-Z0-9_]+\\.)*([a-zA-Z0-9_]+|\*)(?=[\n\s;])/i', 41 // Haxe comments 42 3 => '#/\*\*(?![\*\/]).*\*/#sU', 43 ), 44 'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE, 45 'QUOTEMARKS' => array("'", '"'), 46 'ESCAPE_CHAR' => '\\', 47 'KEYWORDS' => array( 48 1 => array( 49 //http://haxe.org/ref/keywords 50 'break', 'callback', 'case', 'cast', 'catch', 'class', 'continue', 'default', 'do', 'dynamic', 51 'else', 'enum', 'extends', 'extern', /*'false',*/ 'for', 'function', 'here', 'if', 52 'implements', 'import', 'in', 'inline', 'interface', 'never', 'new', /*'null',*/ 'override', 53 'package', 'private', 'public', 'return', 'static', 'super', 'switch', 'this', 'throw', 54 'trace', /*'true',*/ 'try', 'typedef', 'untyped', 'using', 'var', 'while', 55 'macro', '$type', 56 ), 57 2 => array( 58 //primitive values 59 'null', 'false', 'true', 60 ), 61 3 => array( 62 //global types 63 'Array', 'ArrayAccess', /*'Bool',*/ 'Class', 'Date', 'DateTools', 'Dynamic', 64 'EReg', 'Enum', 'EnumValue', /*'Float',*/ 'Hash', /*'Int',*/ 'IntHash', 'IntIter', 65 'Iterable', 'Iterator', 'Lambda', 'List', 'Math', 'Null', 'Reflect', 'Std', 66 /*'String',*/ 'StringBuf', 'StringTools', 'Sys', 'Type', /*'UInt',*/ 'ValueType', 67 /*'Void',*/ 'Xml', 'XmlType', 68 ), 69 4 => array( 70 //primitive types 71 'Void', 'Bool', 'Int', 'Float', 'UInt', 'String', 72 ), 73 5 => array( 74 //compiler switches 75 "#if", "#elseif", "#else", "#end", "#error", 76 ), 77 ), 78 'SYMBOLS' => array( 79 //http://haxe.org/manual/operators 80 '++', '--', 81 '%', 82 '*', '/', 83 '+', '-', 84 '<<', '>>', '>>>', 85 '|', '&', '^', 86 '==', '!=', '>', '>=', '<', '<=', 87 '...', 88 '&&', 89 '||', 90 '?', ':', 91 '=', '+=', '-=', '/=', '*=', '<<=', '>>=', '>>>=', '|=', '&=', '^=', 92 '(', ')', '[', ']', '{', '}', ';', 93 ), 94 'CASE_SENSITIVE' => array( 95 GESHI_COMMENTS => false, 96 1 => true, 97 2 => true, 98 3 => true, 99 4 => true, 100 5 => true, 101 ), 102 'STYLES' => array( 103 'KEYWORDS' => array( 104 1 => 'color: #6699cc; font-weight: bold;', 105 2 => 'color: #000066; font-weight: bold;', 106 3 => 'color: #03F; ', 107 4 => 'color: #000033; font-weight: bold;', 108 5 => 'color: #330000; font-weight: bold;', 109 ), 110 'COMMENTS' => array( 111 1 => 'color: #666666; font-style: italic;', 112 2 => 'color: #006699;', 113 3 => 'color: #008000; font-style: italic; font-weight: bold;', 114 'MULTI' => 'color: #666666; font-style: italic;', 115 ), 116 'ESCAPE_CHAR' => array( 117 0 => 'color: #000099; font-weight: bold;', 118 ), 119 'BRACKETS' => array( 120 0 => 'color: #000000;', 121 ), 122 'STRINGS' => array( 123 0 => 'color: #FF0000;', 124 ), 125 'NUMBERS' => array( 126 0 => 'color: #cc66cc;', 127 ), 128 'METHODS' => array( 129 1 => 'color: #006633;', 130 2 => 'color: #006633;', 131 ), 132 'SYMBOLS' => array( 133 0 => 'color: #339933;', 134 ), 135 'SCRIPT' => array( 136 ), 137 'REGEXPS' => array( 138 ) 139 ), 140 'URLS' => array( 141 1 => '', 142 2 => '', 143 3 => '', 144 4 => '', 145 5 => '', 146 ), 147 'OOLANG' => true, 148 'OBJECT_SPLITTERS' => array( 149 1 => '.', 150 ), 151 'REGEXPS' => array( 152 ), 153 'STRICT_MODE_APPLIES' => GESHI_NEVER, 154 'SCRIPT_DELIMITERS' => array( 155 ), 156 'HIGHLIGHT_STRICT_BLOCK' => array( 157 ), 158); 159