Home | History | Annotate | Download | only in geshi
      1 <?php
      2 /*************************************************************************************
      3  * cpp.php
      4  * -------
      5  * Author: Iulian M
      6  * Copyright: (c) 2006 Iulian M
      7  * Release Version: 1.0.8.3
      8  * Date Started: 2004/09/27
      9  *
     10  * C++ (with QT extensions) language file for GeSHi.
     11  *
     12  * CHANGES
     13  * -------
     14  * 2008/05/23 (1.0.7.22)
     15  *   -  Added description of extra language features (SF#1970248)
     16  *
     17  * TODO
     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' => 'C++ (QT)',
     42     'COMMENT_SINGLE' => array(1 => '//', 2 => '#'),
     43     'COMMENT_MULTI' => array('/*' => '*/'),
     44     'COMMENT_REGEXP' => array(
     45         //Multiline-continued single-line comments
     46         1 => '/\/\/(?:\\\\\\\\|\\\\\\n|.)*$/m',
     47         //Multiline-continued preprocessor define
     48         2 => '/#(?:\\\\\\\\|\\\\\\n|.)*$/m'
     49         ),
     50     'CASE_KEYWORDS' => GESHI_CAPS_NO_CHANGE,
     51     'QUOTEMARKS' => array("'", '"'),
     52     'ESCAPE_CHAR' => '',
     53     'ESCAPE_REGEXP' => array(
     54         //Simple Single Char Escapes
     55         1 => "#\\\\[abfnrtv\\'\"?\n]#i",
     56         //Hexadecimal Char Specs
     57         2 => "#\\\\x[\da-fA-F]{2}#",
     58         //Hexadecimal Char Specs
     59         3 => "#\\\\u[\da-fA-F]{4}#",
     60         //Hexadecimal Char Specs
     61         4 => "#\\\\U[\da-fA-F]{8}#",
     62         //Octal Char Specs
     63         5 => "#\\\\[0-7]{1,3}#"
     64         ),
     65     'NUMBERS' =>
     66         GESHI_NUMBER_INT_BASIC | GESHI_NUMBER_INT_CSTYLE | GESHI_NUMBER_BIN_PREFIX_0B |
     67         GESHI_NUMBER_OCT_PREFIX | GESHI_NUMBER_HEX_PREFIX | GESHI_NUMBER_FLT_NONSCI |
     68         GESHI_NUMBER_FLT_NONSCI_F | GESHI_NUMBER_FLT_SCI_SHORT | GESHI_NUMBER_FLT_SCI_ZERO,
     69     'KEYWORDS' => array(
     70         1 => array(
     71             'case', 'continue', 'default', 'do', 'else', 'for', 'goto', 'if', 'return',
     72             'switch', 'while', 'delete', 'new', 'this'
     73             ),
     74         2 => array(
     75             'NULL', 'false', 'break', 'true', 'enum', 'errno', 'EDOM',
     76             'ERANGE', 'FLT_RADIX', 'FLT_ROUNDS', 'FLT_DIG', 'DBL_DIG', 'LDBL_DIG',
     77             'FLT_EPSILON', 'DBL_EPSILON', 'LDBL_EPSILON', 'FLT_MANT_DIG', 'DBL_MANT_DIG',
     78             'LDBL_MANT_DIG', 'FLT_MAX', 'DBL_MAX', 'LDBL_MAX', 'FLT_MAX_EXP', 'DBL_MAX_EXP',
     79             'LDBL_MAX_EXP', 'FLT_MIN', 'DBL_MIN', 'LDBL_MIN', 'FLT_MIN_EXP', 'DBL_MIN_EXP',
     80             'LDBL_MIN_EXP', 'CHAR_BIT', 'CHAR_MAX', 'CHAR_MIN', 'SCHAR_MAX', 'SCHAR_MIN',
     81             'UCHAR_MAX', 'SHRT_MAX', 'SHRT_MIN', 'USHRT_MAX', 'INT_MAX', 'INT_MIN',
     82             'UINT_MAX', 'LONG_MAX', 'LONG_MIN', 'ULONG_MAX', 'HUGE_VAL', 'SIGABRT',
     83             'SIGFPE', 'SIGILL', 'SIGINT', 'SIGSEGV', 'SIGTERM', 'SIG_DFL', 'SIG_ERR',
     84             'SIG_IGN', 'BUFSIZ', 'EOF', 'FILENAME_MAX', 'FOPEN_MAX', 'L_tmpnam',
     85             'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'TMP_MAX', 'stdin', 'stdout', 'stderr',
     86             'EXIT_FAILURE', 'EXIT_SUCCESS', 'RAND_MAX', 'CLOCKS_PER_SEC',
     87             'virtual', 'public', 'private', 'protected', 'template', 'using', 'namespace',
     88             'try', 'catch', 'inline', 'dynamic_cast', 'const_cast', 'reinterpret_cast',
     89             'static_cast', 'explicit', 'friend', 'wchar_t', 'typename', 'typeid', 'class' ,
     90             'foreach','connect', 'Q_OBJECT' , 'slots' , 'signals'
     91             ),
     92         3 => array(
     93             'cin', 'cerr', 'clog', 'cout',
     94             'printf', 'fprintf', 'snprintf', 'sprintf', 'assert',
     95             'isalnum', 'isalpha', 'isdigit', 'iscntrl', 'isgraph', 'islower', 'isprint',
     96             'ispunct', 'isspace', 'isupper', 'isxdigit', 'tolower', 'toupper',
     97             'exp', 'log', 'log10', 'pow', 'sqrt', 'ceil', 'floor', 'fabs', 'ldexp',
     98             'frexp', 'modf', 'fmod', 'sin', 'cos', 'tan', 'asin', 'acos', 'atan', 'atan2',
     99             'sinh', 'cosh', 'tanh', 'setjmp', 'longjmp',
    100             'va_start', 'va_arg', 'va_end', 'offsetof', 'sizeof', 'fopen', 'freopen',
    101             'fflush', 'fclose', 'remove', 'rename', 'tmpfile', 'tmpname', 'setvbuf',
    102             'setbuf', 'vfprintf', 'vprintf', 'vsprintf', 'fscanf', 'scanf', 'sscanf',
    103             'fgetc', 'fgets', 'fputc', 'fputs', 'getc', 'getchar', 'gets', 'putc',
    104             'putchar', 'puts', 'ungetc', 'fread', 'fwrite', 'fseek', 'ftell', 'rewind',
    105             'fgetpos', 'fsetpos', 'clearerr', 'feof', 'ferror', 'perror', 'abs', 'labs',
    106             'div', 'ldiv', 'atof', 'atoi', 'atol', 'strtod', 'strtol', 'strtoul', 'calloc',
    107             'malloc', 'realloc', 'free', 'abort', 'exit', 'atexit', 'system', 'getenv',
    108             'bsearch', 'qsort', 'rand', 'srand', 'strcpy', 'strncpy', 'strcat', 'strncat',
    109             'strcmp', 'strncmp', 'strcoll', 'strchr', 'strrchr', 'strspn', 'strcspn',
    110             'strpbrk', 'strstr', 'strlen', 'strerror', 'strtok', 'strxfrm', 'memcpy',
    111             'memmove', 'memcmp', 'memchr', 'memset', 'clock', 'time', 'difftime', 'mktime',
    112             'asctime', 'ctime', 'gmtime', 'localtime', 'strftime'
    113             ),
    114         4 => array(
    115             'auto', 'bool', 'char', 'const', 'double', 'float', 'int', 'long', 'longint',
    116             'register', 'short', 'shortint', 'signed', 'static', 'struct',
    117             'typedef', 'union', 'unsigned', 'void', 'volatile', 'extern', 'jmp_buf',
    118             'signal', 'raise', 'va_list', 'ptrdiff_t', 'size_t', 'FILE', 'fpos_t',
    119             'div_t', 'ldiv_t', 'clock_t', 'time_t', 'tm',
    120             ),
    121         5 => array(
    122             'QAbstractButton','QDir','QIntValidator','QRegExpValidator','QTabWidget','QAbstractEventDispatcher',
    123             'QDirectPainter','QIODevice','QRegion','QTcpServer','QAbstractExtensionFactory','QDirModel',
    124             'QItemDelegate','QResizeEvent','QTcpSocket','QAbstractExtensionManager','QDockWidget',
    125             'QItemEditorCreatorBase','QResource','QTemporaryFile','QAbstractFileEngine','QDomAttr',
    126             'QItemEditorFactory','QRubberBand','QTestEventList','QAbstractFileEngineHandler','QDomCDATASection',
    127             'QItemSelection','QScreen','QTextBlock','QAbstractFormBuilder','QDomCharacterData','QItemSelectionModel',
    128             'QScreenCursor','QTextBlockFormat','QAbstractGraphicsShapeItem','QDomComment','QItemSelectionRange',
    129             'QScreenDriverFactory','QTextBlockGroup','QAbstractItemDelegate','QDomDocument','QKbdDriverFactory',
    130             'QScreenDriverPlugin','QTextBlockUserData','QAbstractItemModel','QDomDocumentFragment','QKbdDriverPlugin',
    131             'QScrollArea','QTextBrowser','QAbstractItemView','QDomDocumentType','QKeyEvent','QScrollBar',
    132             'QTextCharFormat','QAbstractListModel','QDomElement','QKeySequence','QSemaphore','QTextCodec',
    133             'QAbstractPrintDialog','QDomEntity','QLabel','QSessionManager','QTextCodecPlugin','QAbstractProxyModel',
    134             'QDomEntityReference','QLatin1Char','QSet','QTextCursor','QAbstractScrollArea','QDomImplementation',
    135             'QLatin1String','QSetIterator','QTextDecoder','QAbstractSlider','QDomNamedNodeMap','QLayout','QSettings',
    136             'QTextDocument','QAbstractSocket','QDomNode','QLayoutItem','QSharedData','QTextDocumentFragment',
    137             'QAbstractSpinBox','QDomNodeList','QLCDNumber','QSharedDataPointer','QTextEdit','QAbstractTableModel',
    138             'QDomNotation','QLibrary','QShortcut','QTextEncoder','QAbstractTextDocumentLayout',
    139             'QDomProcessingInstruction','QLibraryInfo','QShortcutEvent','QTextFormat','QAccessible','QDomText',
    140             'QLine','QShowEvent','QTextFragment','QAccessibleBridge','QDoubleSpinBox','QLinearGradient',
    141             'QSignalMapper','QTextFrame','QAccessibleBridgePlugin','QDoubleValidator','QLineEdit','QSignalSpy',
    142             'QTextFrameFormat','QAccessibleEvent','QDrag','QLineF','QSize','QTextImageFormat','QAccessibleInterface',
    143             'QDragEnterEvent','QLinkedList','QSizeF','QTextInlineObject','QAccessibleObject','QDragLeaveEvent',
    144             'QLinkedListIterator','QSizeGrip','QTextLayout','QAccessiblePlugin','QDragMoveEvent','QLinuxFbScreen',
    145             'QSizePolicy','QTextLength','QAccessibleWidget','QDropEvent','QList','QSlider','QTextLine','QAction',
    146             'QDynamicPropertyChangeEvent','QListIterator','QSocketNotifier','QTextList','QActionEvent','QErrorMessage',
    147             'QListView','QSortFilterProxyModel','QTextListFormat','QActionGroup','QEvent','QListWidget','QSound',
    148             'QTextObject','QApplication','QEventLoop','QListWidgetItem','QSpacerItem','QTextOption','QAssistantClient',
    149             'QExtensionFactory','QLocale','QSpinBox','QTextStream','QAxAggregated','QExtensionManager',
    150             'QMacPasteboardMime','QSplashScreen','QTextTable','QAxBase','QFile','QMacStyle','QSplitter',
    151             'QTextTableCell','QAxBindable','QFileDialog','QMainWindow','QSplitterHandle','QTextTableFormat',
    152             'QAxFactory','QFileIconProvider','QMap','QSqlDatabase','QThread','QAxObject','QFileInfo','QMapIterator',
    153             'QSqlDriver','QThreadStorage','QAxScript','QFileOpenEvent','QMatrix','QSqlDriverCreator','QTime',
    154             'QAxScriptEngine','QFileSystemWatcher','QMenu','QSqlDriverCreatorBase','QTimeEdit','QAxScriptManager',
    155             'QFlag','QMenuBar','QSqlDriverPlugin','QTimeLine','QAxWidget','QFlags','QMessageBox','QSqlError','QTimer',
    156             'QBasicTimer','QFocusEvent','QMetaClassInfo','QSqlField','QTimerEvent','QBitArray','QFocusFrame',
    157             'QMetaEnum','QSqlIndex','QToolBar','QBitmap','QFont','QMetaMethod','QSqlQuery','QToolBox','QBoxLayout',
    158             'QFontComboBox','QMetaObject','QSqlQueryModel','QToolButton','QBrush','QFontDatabase','QMetaProperty',
    159             'QSqlRecord','QToolTip','QBuffer','QFontDialog','QMetaType','QSqlRelation','QTransformedScreen',
    160             'QButtonGroup','QFontInfo','QMimeData','QSqlRelationalDelegate','QTranslator','QByteArray','QFontMetrics',
    161             'QMimeSource','QSqlRelationalTableModel','QTreeView','QByteArrayMatcher','QFontMetricsF','QModelIndex',
    162             'QSqlResult','QTreeWidget','QCache','QFormBuilder','QMotifStyle','QSqlTableModel','QTreeWidgetItem',
    163             'QCalendarWidget','QFrame','QMouseDriverFactory','QStack','QTreeWidgetItemIterator','QCDEStyle',
    164             'QFSFileEngine','QMouseDriverPlugin','QStackedLayout','QUdpSocket','QChar','QFtp','QMouseEvent',
    165             'QStackedWidget','QUiLoader','QCheckBox','QGenericArgument','QMoveEvent','QStandardItem','QUndoCommand',
    166             'QChildEvent','QGenericReturnArgument','QMovie','QStandardItemEditorCreator','QUndoGroup',
    167             'QCleanlooksStyle','QGLColormap','QMultiHash','QStandardItemModel','QUndoStack','QClipboard',
    168             'QGLContext','QMultiMap','QStatusBar','QUndoView','QCloseEvent','QGLFormat','QMutableHashIterator',
    169             'QStatusTipEvent','QUrl','QColor','QGLFramebufferObject','QMutableLinkedListIterator','QString',
    170             'QUrlInfo','QColorDialog','QGLPixelBuffer','QMutableListIterator','QStringList','QUuid','QColormap',
    171             'QGLWidget','QMutableMapIterator','QStringListModel','QValidator','QComboBox','QGradient',
    172             'QMutableSetIterator','QStringMatcher','QVariant','QCommonStyle','QGraphicsEllipseItem',
    173             'QMutableVectorIterator','QStyle','QVarLengthArray','QCompleter','QGraphicsItem','QMutex',
    174             'QStyleFactory','QVBoxLayout','QConicalGradient','QGraphicsItemAnimation','QMutexLocker',
    175             'QStyleHintReturn','QVector','QContextMenuEvent','QGraphicsItemGroup','QNetworkAddressEntry',
    176             'QStyleHintReturnMask','QVectorIterator','QCopChannel','QGraphicsLineItem','QNetworkInterface',
    177             'QStyleOption','QVFbScreen','QCoreApplication','QGraphicsPathItem','QNetworkProxy','QStyleOptionButton',
    178             'QVNCScreen','QCursor','QGraphicsPixmapItem','QObject','QStyleOptionComboBox','QWaitCondition',
    179             'QCustomRasterPaintDevice','QGraphicsPolygonItem','QObjectCleanupHandler','QStyleOptionComplex',
    180             'QWhatsThis','QDataStream','QGraphicsRectItem','QPageSetupDialog','QStyleOptionDockWidget',
    181             'QWhatsThisClickedEvent','QDataWidgetMapper','QGraphicsScene','QPaintDevice','QStyleOptionFocusRect',
    182             'QWheelEvent','QDate','QGraphicsSceneContextMenuEvent','QPaintEngine','QStyleOptionFrame','QWidget',
    183             'QDateEdit','QGraphicsSceneEvent','QPaintEngineState','QStyleOptionFrameV2','QWidgetAction','QDateTime',
    184             'QGraphicsSceneHoverEvent','QPainter','QStyleOptionGraphicsItem','QWidgetItem','QDateTimeEdit',
    185             'QGraphicsSceneMouseEvent','QPainterPath','QStyleOptionGroupBox','QWindowsMime','QDBusAbstractAdaptor',
    186             'QGraphicsSceneWheelEvent','QPainterPathStroker','QStyleOptionHeader','QWindowsStyle',
    187             'QDBusAbstractInterface','QGraphicsSimpleTextItem','QPaintEvent','QStyleOptionMenuItem',
    188             'QWindowStateChangeEvent','QDBusArgument','QGraphicsSvgItem','QPair','QStyleOptionProgressBar',
    189             'QWindowsXPStyle','QDBusConnection','QGraphicsTextItem','QPalette','QStyleOptionProgressBarV2',
    190             'QWorkspace','QDBusConnectionInterface','QGraphicsView','QPen','QStyleOptionQ3DockWindow','QWriteLocker',
    191             'QDBusError','QGridLayout','QPersistentModelIndex','QStyleOptionQ3ListView','QWSCalibratedMouseHandler',
    192             'QDBusInterface','QGroupBox','QPicture','QStyleOptionQ3ListViewItem','QWSClient','QDBusMessage','QHash',
    193             'QPictureFormatPlugin','QStyleOptionRubberBand','QWSEmbedWidget','QDBusObjectPath','QHashIterator',
    194             'QPictureIO','QStyleOptionSizeGrip','QWSEvent','QDBusReply','QHBoxLayout','QPixmap','QStyleOptionSlider',
    195             'QWSInputMethod','QDBusServer','QHeaderView','QPixmapCache','QStyleOptionSpinBox','QWSKeyboardHandler',
    196             'QDBusSignature','QHelpEvent','QPlastiqueStyle','QStyleOptionTab','QWSMouseHandler','QDBusVariant',
    197             'QHideEvent','QPluginLoader','QStyleOptionTabBarBase','QWSPointerCalibrationData','QDecoration',
    198             'QHostAddress','QPoint','QStyleOptionTabV2','QWSScreenSaver','QDecorationFactory','QHostInfo','QPointer',
    199             'QStyleOptionTabWidgetFrame','QWSServer','QDecorationPlugin','QHoverEvent','QPointF','QStyleOptionTitleBar',
    200             'QWSTslibMouseHandler','QDesignerActionEditorInterface','QHttp','QPolygon','QStyleOptionToolBar','QWSWindow',
    201             'QDesignerContainerExtension','QHttpHeader','QPolygonF','QStyleOptionToolBox','QWSWindowSurface',
    202             'QDesignerCustomWidgetCollectionInterface','QHttpRequestHeader','QPrintDialog','QStyleOptionToolButton',
    203             'QX11EmbedContainer','QDesignerCustomWidgetInterface','QHttpResponseHeader','QPrintEngine',
    204             'QStyleOptionViewItem','QX11EmbedWidget','QDesignerFormEditorInterface','QIcon','QPrinter',
    205             'QStyleOptionViewItemV2','QX11Info','QDesignerFormWindowCursorInterface','QIconDragEvent','QProcess',
    206             'QStylePainter','QXmlAttributes','QDesignerFormWindowInterface','QIconEngine','QProgressBar',
    207             'QStylePlugin','QXmlContentHandler','QDesignerFormWindowManagerInterface','QIconEnginePlugin',
    208             'QProgressDialog','QSvgRenderer','QXmlDeclHandler','QDesignerMemberSheetExtension','QImage',
    209             'QProxyModel','QSvgWidget','QXmlDefaultHandler','QDesignerObjectInspectorInterface','QImageIOHandler',
    210             'QPushButton','QSyntaxHighlighter','QXmlDTDHandler','QDesignerPropertyEditorInterface','QImageIOPlugin',
    211             'QQueue','QSysInfo','QXmlEntityResolver','QDesignerPropertySheetExtension','QImageReader','QRadialGradient',
    212             'QSystemLocale','QXmlErrorHandler','QDesignerTaskMenuExtension','QImageWriter','QRadioButton',
    213             'QSystemTrayIcon','QXmlInputSource','QDesignerWidgetBoxInterface','QInputContext','QRasterPaintEngine',
    214             'QTabBar','QXmlLexicalHandler','QDesktopServices','QInputContextFactory','QReadLocker','QTabletEvent',
    215             'QXmlLocator','QDesktopWidget','QInputContextPlugin','QReadWriteLock','QTableView','QXmlNamespaceSupport',
    216             'QDial','QInputDialog','QRect','QTableWidget','QXmlParseException','QDialog','QInputEvent','QRectF',
    217             'QTableWidgetItem','QXmlReader','QDialogButtonBox','QInputMethodEvent','QRegExp',
    218             'QTableWidgetSelectionRange','QXmlSimpleReader'
    219             )
    220         ),
    221     'SYMBOLS' => array(
    222         '(', ')', '{', '}', '[', ']', '=', '+', '-', '*', '/', '!', '%', '^', '&', ':', ',', ';', '|', '<', '>'
    223         ),
    224     'CASE_SENSITIVE' => array(
    225         GESHI_COMMENTS => false,
    226         1 => true,
    227         2 => true,
    228         3 => true,
    229         4 => true,
    230         5 => true,
    231         ),
    232     'STYLES' => array(
    233         'KEYWORDS' => array(
    234             1 => 'color: #000000; font-weight:bold;',
    235             2 => 'color: #0057AE;',
    236             3 => 'color: #2B74C7;',
    237             4 => 'color: #0057AE;',
    238             5 => 'color: #22aadd;'
    239             ),
    240         'COMMENTS' => array(
    241             1 => 'color: #888888;',
    242             2 => 'color: #006E28;',
    243             'MULTI' => 'color: #888888; font-style: italic;'
    244             ),
    245         'ESCAPE_CHAR' => array(
    246             0 => 'color: #000099; font-weight: bold;',
    247             1 => 'color: #000099; font-weight: bold;',
    248             2 => 'color: #660099; font-weight: bold;',
    249             3 => 'color: #660099; font-weight: bold;',
    250             4 => 'color: #660099; font-weight: bold;',
    251             5 => 'color: #006699; font-weight: bold;',
    252             'HARD' => '',
    253             ),
    254         'BRACKETS' => array(
    255             0 => 'color: #006E28;'
    256             ),
    257         'STRINGS' => array(
    258             0 => 'color: #BF0303;'
    259             ),
    260         'NUMBERS' => array(
    261             0 => 'color: #B08000;',
    262             GESHI_NUMBER_BIN_PREFIX_0B => 'color: #208080;',
    263             GESHI_NUMBER_OCT_PREFIX => 'color: #208080;',
    264             GESHI_NUMBER_HEX_PREFIX => 'color: #208080;',
    265             GESHI_NUMBER_FLT_SCI_SHORT => 'color:#800080;',
    266             GESHI_NUMBER_FLT_SCI_ZERO => 'color:#800080;',
    267             GESHI_NUMBER_FLT_NONSCI_F => 'color:#800080;',
    268             GESHI_NUMBER_FLT_NONSCI => 'color:#800080;'
    269             ),
    270         'METHODS' => array(
    271             1 => 'color: #2B74C7;',
    272             2 => 'color: #2B74C7;',
    273             3 => 'color: #2B74C7;'
    274             ),
    275         'SYMBOLS' => array(
    276             0 => 'color: #006E28;'
    277             ),
    278         'REGEXPS' => array(
    279             ),
    280         'SCRIPT' => array(
    281             )
    282         ),
    283     'URLS' => array(
    284         1 => '',
    285         2 => '',
    286         3 => '',
    287         4 => '',
    288         5 => 'http://doc.trolltech.com/latest/{FNAMEL}.html'
    289         ),
    290     'OOLANG' => true,
    291     'OBJECT_SPLITTERS' => array(
    292         1 => '.',
    293         2 => '::',
    294         3 => '-&gt;',
    295         ),
    296     'REGEXPS' => array(
    297         ),
    298     'STRICT_MODE_APPLIES' => GESHI_NEVER,
    299     'SCRIPT_DELIMITERS' => array(
    300         ),
    301     'HIGHLIGHT_STRICT_BLOCK' => array(
    302         ),
    303     'TAB_WIDTH' => 4,
    304     'PARSER_CONTROL' => array(
    305         'KEYWORDS' => array(
    306             'DISALLOWED_BEFORE' => "(?<![a-zA-Z0-9\$_\|\#>|^])",
    307             'DISALLOWED_AFTER' => "(?![a-zA-Z0-9_<\|%\\-])"
    308         ),
    309         'OOLANG' => array(
    310             'MATCH_AFTER' => '~?[a-zA-Z][a-zA-Z0-9_]*',
    311         )
    312     )
    313 );
    314 
    315 ?>