File Coverage

blib/lib/Syntax/Highlight/Engine/Kate/Apache_Configuration.pm
Criterion Covered Total %
statement 24 89 26.9
branch 0 46 0.0
condition 1 3 33.3
subroutine 4 14 28.5
pod 0 11 0.0
total 29 163 17.7


line stmt bran cond sub pod time code
1             # Copyright (c) 2005 - 2006 Hans Jeuken. All rights reserved.
2             # This program is free software; you can redistribute it and/or
3             # modify it under the same terms as Perl itself.
4              
5             # This file was generated from the 'apache.xml' file of the syntax highlight
6             # engine of the kate text editor (http://www.kate-editor.org
7              
8             #kate xml version 1.10
9             #kate author Jan Janssen (medhefgo@googlemail.com)
10             #generated: Sun Feb 3 22:02:04 2008, localtime
11              
12             package Syntax::Highlight::Engine::Kate::Apache_Configuration;
13              
14             our $VERSION = '0.14';
15              
16 1     1   608 use strict;
  1         2  
  1         25  
17 1     1   5 use warnings;
  1         2  
  1         22  
18 1     1   4 use base('Syntax::Highlight::Engine::Kate::Template');
  1         2  
  1         1334  
19              
20             sub new {
21 1     1 0 459 my $proto = shift;
22 1   33     6 my $class = ref($proto) || $proto;
23 1         6 my $self = $class->SUPER::new(@_);
24 1         9 $self->attributes({
25             'Alert' => 'Error',
26             'Alternates' => 'Keyword',
27             'Attribute' => 'Others',
28             'Comment' => 'Comment',
29             'Container' => 'Function',
30             'Directives' => 'Reserved',
31             'Float' => 'Float',
32             'Int' => 'Float',
33             'Normal Text' => 'Normal',
34             'Other' => 'Char',
35             'String' => 'String',
36             });
37 1         6 $self->listAdd('Alternates',
38             'All',
39             'Allow,Deny',
40             'Any',
41             'Ascending',
42             'AuthConfig',
43             'Basic',
44             'Block',
45             'CompatEnvVars',
46             'Connection',
47             'Cookie',
48             'Cookie2',
49             'DB',
50             'DNS',
51             'Date',
52             'Default',
53             'Deny,Allow',
54             'Descending',
55             'Description',
56             'Digest',
57             'Double',
58             'EMail',
59             'ExecCGI',
60             'ExportCertData',
61             'FakeBasicAuth',
62             'Fallback',
63             'FileInfo',
64             'Filters',
65             'FollowSymLinks',
66             'Full',
67             'Full',
68             'GDBM',
69             'GDSF',
70             'Handlers',
71             'INode',
72             'Ignore',
73             'Includes',
74             'IncludesNOEXEC',
75             'Indexes',
76             'Indexes',
77             'IsError',
78             'Keep-Alive',
79             'LRU',
80             'Limit',
81             'MD5',
82             'MD5-sess',
83             'MTime',
84             'Major',
85             'Min',
86             'Minimal',
87             'Minor',
88             'MultiViews',
89             'Mutual-failure',
90             'NDBM',
91             'Name',
92             'NegotiatedOnly',
93             'Netscape',
94             'None',
95             'OS',
96             'Off',
97             'On',
98             'OptRenegotiate',
99             'Options',
100             'Prefer',
101             'Prod',
102             'ProductOnly',
103             'Proxy-Authenticate',
104             'Proxy-Authorization',
105             'RFC2109',
106             'RFC2965',
107             'Registry',
108             'Registry-Strict',
109             'SDBM',
110             'SSL',
111             'SSLv2',
112             'SSLv3',
113             'STARTTLS',
114             'Script',
115             'Size',
116             'Size',
117             'StartBody',
118             'StdEnvVars',
119             'StrictRequire',
120             'SymLinksIfOwnerMatch',
121             'TE',
122             'TLS',
123             'TLSv1',
124             'Trailers',
125             'Transfer-Encoding',
126             'Upgrade',
127             'alert',
128             'always',
129             'auth',
130             'auth-int',
131             'crit',
132             'dbm:',
133             'dc:',
134             'debug',
135             'emerg',
136             'error',
137             'error',
138             'fcntl',
139             'fcntl:',
140             'file:',
141             'finding',
142             'flock',
143             'flock:',
144             'formatted',
145             'info',
146             'inherit',
147             'map',
148             'never',
149             'no',
150             'nocontent',
151             'nonenotnull',
152             'notice',
153             'optional',
154             'optional_no_ca',
155             'posixsem',
156             'posixsem',
157             'pthread',
158             'pthread',
159             'referer',
160             'require',
161             'searching',
162             'sem',
163             'semiformatted',
164             'shm:',
165             'sysvsem',
166             'sysvsem',
167             'unformatted',
168             'warn',
169             'yes',
170             );
171 1         4 $self->listAdd('Alternative Directives',
172             'AcceptMutex',
173             'AcceptPathInfo',
174             'AllowEncodedSlashes',
175             'AllowOverride',
176             'Anonymous_Authoritative',
177             'Anonymous_LogEmail',
178             'Anonymous_MustGiveEmail',
179             'Anonymous_NoUserID',
180             'Anonymous_VerifyEmail',
181             'AuthAuthoritative',
182             'AuthBasicAuthoritative',
183             'AuthBasicProvider',
184             'AuthDBMAuthoritative',
185             'AuthDBMType',
186             'AuthDefaultAuthoritative',
187             'AuthDigestAlgorithm',
188             'AuthDigestNcCheck',
189             'AuthDigestQop',
190             'AuthLDAPAuthoritative',
191             'AuthLDAPCompareDNOnServer',
192             'AuthLDAPDereferenceAliases',
193             'AuthLDAPEnabled',
194             'AuthLDAPFrontPageHack',
195             'AuthLDAPGroupAttributeIsDN',
196             'AuthLDAPRemoteUserIsDN',
197             'AuthType',
198             'AuthzDBMAuthoritative',
199             'AuthzDBMType',
200             'AuthzDefaultAuthoritative',
201             'AuthzGroupFileAuthoritative',
202             'AuthzLDAPAuthoritative',
203             'AuthzOwnerAuthoritative',
204             'AuthzUserAuthoritative',
205             'BufferedLogs',
206             'CacheExpiryCheck',
207             'CacheIgnoreCacheControl',
208             'CacheIgnoreHeaders',
209             'CacheIgnoreNoLastMod',
210             'CacheNegotiatedDocs',
211             'CacheStoreNoStore',
212             'CacheStorePrivate',
213             'CheckSpelling',
214             'ContentDigest',
215             'CookieStyle',
216             'CookieTracking',
217             'CoreDumpDirectory',
218             'CustomLog',
219             'DavDepthInfinity',
220             'DirectorySlash',
221             'DumpIOInput',
222             'DumpIOOutput',
223             'EnableExceptionHook',
224             'EnableMMAP',
225             'EnableSendfile',
226             'ExpiresActive',
227             'ExtendedStatus',
228             'FileETag',
229             'ForceLanguagePriority',
230             'HostnameLookups',
231             'ISAPIAppendLogToErrors',
232             'ISAPIAppendLogToQuery',
233             'ISAPIFakeAsync',
234             'ISAPILogNotSupported',
235             'IdentityCheck',
236             'ImapDefault',
237             'ImapMenu',
238             'IndexOrderDefault',
239             'KeepAlive',
240             'LDAPTrustedMode',
241             'LDAPVerifyServerCert',
242             'LogLevel',
243             'MCacheRemovalAlgorithm',
244             'MetaFiles',
245             'ModMimeUsePathInfo',
246             'MultiviewsMatch',
247             'Options',
248             'Order',
249             'ProtocolEcho',
250             'ProxyBadHeader',
251             'ProxyErrorOverride',
252             'ProxyPreserveHost',
253             'ProxyRequests',
254             'ProxyVia',
255             'RewriteEngine',
256             'RewriteOptions',
257             'SSLEngine',
258             'SSLMutex',
259             'SSLOptions',
260             'SSLProtocol',
261             'SSLProxyEngine',
262             'SSLProxyVerify',
263             'SSLSessionCache',
264             'SSLVerifyClient',
265             'Satisfy',
266             'ScriptInterpreterSource',
267             'ServerSignature',
268             'ServerTokens',
269             'UseCanonicalName',
270             'XBitHack',
271             );
272 1         4 $self->listAdd('Integer Directives',
273             'AllowCONNECT',
274             'AssignUserID',
275             'AuthDigestNonceLifetime',
276             'AuthDigestShmemSize',
277             'CacheDefaultExpire',
278             'CacheDirLength',
279             'CacheDirLevels',
280             'CacheForceCompletion',
281             'CacheGcDaily',
282             'CacheGcInterval',
283             'CacheGcMemUsage',
284             'CacheLastModifiedFactor',
285             'CacheMaxExpire',
286             'CacheMaxFileSize',
287             'CacheMinFileSize',
288             'CacheSize',
289             'CacheTimeMargin',
290             'ChildPerUserID',
291             'CookieExpires',
292             'DBDExptime',
293             'DBDKeep',
294             'DBDMax',
295             'DBDMin',
296             'DBDPersist',
297             'DavMinTimeout',
298             'DeflateBufferSize',
299             'DeflateCompressionLevel',
300             'DeflateMemLevel',
301             'DeflateWindowSize',
302             'ISAPIReadAheadBuffer',
303             'IdentityCheckTimeout',
304             'KeepAliveTimeout',
305             'LDAPCacheEntries',
306             'LDAPCacheTTL',
307             'LDAPConnectionTimeout',
308             'LDAPOpCacheEntries',
309             'LDAPOpCacheTTL',
310             'LDAPSharedCacheSize',
311             'LimitInternalRecursion',
312             'LimitRequestBody',
313             'LimitRequestFields',
314             'LimitRequestFieldsize',
315             'LimitRequestLine',
316             'LimitXMLRequestBody',
317             'ListenBacklog',
318             'MCacheMaxObjectCount',
319             'MCacheMaxObjectSize',
320             'MCacheMaxStreamingBuffer',
321             'MCacheMinObjectSize',
322             'MCacheSize',
323             'MaxClients',
324             'MaxKeepAliveRequests',
325             'MaxMemFree',
326             'MaxRequestsPerChild',
327             'MaxRequestsPerThread',
328             'MaxSpareServers',
329             'MaxSpareThreads',
330             'MaxThreads',
331             'MaxThreadsPerChild',
332             'MinSpareServers',
333             'MinSpareThreads',
334             'NumServers',
335             'ProxyIOBufferSize',
336             'ProxyMaxForwards',
337             'ProxyReceiveBufferSize',
338             'ProxyTimeout',
339             'RLimitCPU',
340             'RLimitMEM',
341             'RLimitNPROC',
342             'RewriteLogLevel',
343             'SSLProxyVerifyDepth',
344             'SSLSessionCacheTimeout',
345             'SSLVerifyDepth',
346             'ScriptLogBuffer',
347             'ScriptLogLength',
348             'SendBufferSize',
349             'ServerLimit',
350             'StartServers',
351             'StartThreads',
352             'ThreadLimit',
353             'ThreadStackSize',
354             'ThreadsPerChild',
355             'TimeOut',
356             );
357 1         6 $self->listAdd('String Directives',
358             'AcceptFilter',
359             'AccessFileName',
360             'Action',
361             'AddAlt',
362             'AddAltByEncoding',
363             'AddAltByType',
364             'AddCharset',
365             'AddDefaultCharset',
366             'AddDescription',
367             'AddEncoding',
368             'AddHandler',
369             'AddIcon',
370             'AddIconByEncoding',
371             'AddIconByType',
372             'AddInputFilter',
373             'AddLanguage',
374             'AddModuleInfo',
375             'AddOutputFilter',
376             'AddOutputFilterByType',
377             'AddType',
378             'Alias',
379             'AliasMatch',
380             'Allow',
381             'Anonymous',
382             'AuthBasicProvider',
383             'AuthDBMGroupFile',
384             'AuthDBMUserFile',
385             'AuthDigestDomain',
386             'AuthDigestFile',
387             'AuthDigestGroupFile',
388             'AuthDigestNonceFormat',
389             'AuthDigestProvider',
390             'AuthGroupFile',
391             'AuthLDAPBindDN',
392             'AuthLDAPBindPassword',
393             'AuthLDAPCharsetConfig',
394             'AuthLDAPGroupAttribute',
395             'AuthLDAPUrl',
396             'AuthName',
397             'AuthUserFile',
398             'BS2000Account',
399             'BrowserMatch',
400             'BrowserMatchNoCase',
401             'CGIMapExtension',
402             'CacheDisable',
403             'CacheEnable',
404             'CacheFile',
405             'CacheGcClean',
406             'CacheGcUnused',
407             'CacheRoot',
408             'CharsetDefault',
409             'CharsetOptions',
410             'CharsetSourceEnc',
411             'CookieDomain',
412             'CookieLog',
413             'CookieName',
414             'CoreDumpDirectory',
415             'CustomLog',
416             'DBDParams',
417             'DBDPrepareSQL',
418             'DBDriver',
419             'Dav',
420             'DavGenericLockDB',
421             'DavLockDB',
422             'DefaultIcon',
423             'DefaultLanguage',
424             'DefaultType',
425             'DeflateFilterNote',
426             'Deny',
427             'DirectoryIndex',
428             'DocumentRoot',
429             'ErrorDocument',
430             'ErrorLog',
431             'Example',
432             'ExpiresByType',
433             'ExpiresDefault',
434             'ExtFilterDefine',
435             'ExtFilterOptions',
436             'FilterChain',
437             'FilterDeclare',
438             'FilterProtocol',
439             'FilterProvider',
440             'FilterTrace',
441             'ForceType',
442             'ForensicLog',
443             'Group',
444             'Header',
445             'HeaderName',
446             'ISAPICacheFile',
447             'ImapBase',
448             'Include',
449             'IndexIgnore',
450             'IndexOptions',
451             'IndexStyleSheet',
452             'LDAPSharedCacheFile',
453             'LDAPTrustedCA',
454             'LDAPTrustedCAType',
455             'LDAPTrustedClientCert',
456             'LDAPTrustedGlobalCert',
457             'LanguagePriority',
458             'Listen',
459             'LoadFile',
460             'LoadModule',
461             'LockFile',
462             'LogFormat',
463             'MMapFile',
464             'MetaDir',
465             'MetaSuffix',
466             'MimeMagicFile',
467             'NWSSLTrustedCerts',
468             'NWSSLUpgradeable',
469             'NameVirtualHost',
470             'NoProxy',
471             'PassEnv',
472             'PidFile',
473             'ProxyBlock',
474             'ProxyDomain',
475             'ProxyPass',
476             'ProxyPassReverse',
477             'ProxyPassReverseCookieDomain',
478             'ProxyPassReverseCookiePath',
479             'ProxyRemote',
480             'ProxyRemoteMatch',
481             'ReadmeName',
482             'Redirect',
483             'RedirectMatch',
484             'RedirectPermanent',
485             'RedirectTemp',
486             'RemoveCharset',
487             'RemoveEncoding',
488             'RemoveHandler',
489             'RemoveInputFilter',
490             'RemoveLanguage',
491             'RemoveOutputFilter',
492             'RemoveType',
493             'RequestHeader',
494             'Require',
495             'RewriteBase',
496             'RewriteCond',
497             'RewriteLock',
498             'RewriteLog',
499             'RewriteMap',
500             'RewriteRule',
501             'SSIEndTag',
502             'SSIErrorMsg',
503             'SSIStartTag',
504             'SSITimeFormat',
505             'SSIUndefinedEcho',
506             'SSLCACertificateFile',
507             'SSLCACertificatePath',
508             'SSLCADNRequestFile',
509             'SSLCADNRequestPath',
510             'SSLCARevocationFile',
511             'SSLCARevocationPath',
512             'SSLCertificateChainFile',
513             'SSLCertificateFile',
514             'SSLCertificateKeyFile',
515             'SSLCipherSuite',
516             'SSLCryptoDevice',
517             'SSLHonorCiperOrder',
518             'SSLPassPhraseDialog',
519             'SSLProxyCACertificateFile',
520             'SSLProxyCACertificatePath',
521             'SSLProxyCARevocationFile',
522             'SSLProxyCARevocationPath',
523             'SSLProxyCipherSuite',
524             'SSLProxyMachineCertificateFile',
525             'SSLProxyMachineCertificatePath',
526             'SSLProxyProtocol',
527             'SSLRandomSeed',
528             'SSLRequire',
529             'SSLRequireSSL',
530             'SSLUserName',
531             'ScoreBoardFile',
532             'Script',
533             'ScriptAlias',
534             'ScriptAliasMatch',
535             'ScriptLog',
536             'ScriptSock',
537             'SecureListen',
538             'ServerAdmin',
539             'ServerAlias',
540             'ServerName',
541             'ServerPath',
542             'ServerRoot',
543             'SetEnv',
544             'SetEnvIf',
545             'SetEnvIfNoCase',
546             'SetHandler',
547             'SetInputFilter',
548             'SetOutputFilter',
549             'SuexecUserGroup',
550             'TransferLog',
551             'TypesConfig',
552             'UnsetEnv',
553             'User',
554             'UserDir',
555             'VirtualDocumentRoot',
556             'VirtualDocumentRootIP',
557             'VirtualScriptAlias',
558             'VirtualScriptAliasIP',
559             'Win32DisableAcceptEx',
560             );
561 1         16 $self->contextdata({
562             'Alert' => {
563             callback => \&parseAlert,
564             attribute => 'Alert',
565             lineending => '#pop',
566             },
567             'Alternative Directives' => {
568             callback => \&parseAlternativeDirectives,
569             attribute => 'Other',
570             lineending => '#pop',
571             },
572             'Comment' => {
573             callback => \&parseComment,
574             attribute => 'Comment',
575             lineending => '#pop',
576             },
577             'Comment Alert' => {
578             callback => \&parseCommentAlert,
579             attribute => 'Normal Text',
580             lineending => '#pop',
581             },
582             'Container Close' => {
583             callback => \&parseContainerClose,
584             attribute => 'Container',
585             lineending => '#pop',
586             },
587             'Container Open' => {
588             callback => \&parseContainerOpen,
589             attribute => 'Container',
590             lineending => '#pop',
591             },
592             'Integer Directives' => {
593             callback => \&parseIntegerDirectives,
594             attribute => 'Other',
595             lineending => '#pop',
596             },
597             'String Directives' => {
598             callback => \&parseStringDirectives,
599             attribute => 'Directives',
600             lineending => '#pop',
601             },
602             'apache' => {
603             callback => \&parseapache,
604             attribute => 'Normal Text',
605             },
606             });
607 1         11 $self->deliminators('\\s||\\.|\\(|\\)|:|\\!|\\+|-|<|=|>|\\%|\\&|\\*|\\/|;|\\?|\\[|\\]|\\^|\\{|\\||\\}|\\~|\\\\|,');
608 1         4 $self->basecontext('apache');
609 1         12 $self->keywordscase(0);
610 1         3 $self->initialize;
611 1         2 bless ($self, $class);
612 1         3 return $self;
613             }
614              
615             sub language {
616 0     0 0   return 'Apache Configuration';
617             }
618              
619             sub parseAlert {
620 0     0 0   my ($self, $text) = @_;
621 0           return 0;
622             };
623              
624             sub parseAlternativeDirectives {
625 0     0 0   my ($self, $text) = @_;
626             # String => 'Alternates'
627             # attribute => 'Alternates'
628             # context => '#stay'
629             # type => 'keyword'
630 0 0         if ($self->testKeyword($text, 'Alternates', 0, undef, 0, '#stay', 'Alternates')) {
631 0           return 1
632             }
633             # attribute => 'Alternates'
634             # char => '-'
635             # context => '#stay'
636             # type => 'DetectChar'
637 0 0         if ($self->testDetectChar($text, '-', 0, 0, 0, undef, 0, '#stay', 'Alternates')) {
638 0           return 1
639             }
640             # attribute => 'Alternates'
641             # char => '+'
642             # context => '#stay'
643             # type => 'DetectChar'
644 0 0         if ($self->testDetectChar($text, '+', 0, 0, 0, undef, 0, '#stay', 'Alternates')) {
645 0           return 1
646             }
647             # context => 'Comment Alert'
648             # type => 'IncludeRules'
649 0 0         if ($self->includeRules('Comment Alert', $text)) {
650 0           return 1
651             }
652 0           return 0;
653             };
654              
655             sub parseComment {
656 0     0 0   my ($self, $text) = @_;
657             # type => 'DetectSpaces'
658 0 0         if ($self->testDetectSpaces($text, 0, undef, 0, '#stay', undef)) {
659 0           return 1
660             }
661             # context => '##Alerts'
662             # type => 'IncludeRules'
663 0 0         if ($self->includePlugin('Alerts', $text)) {
664 0           return 1
665             }
666             # type => 'DetectIdentifier'
667 0 0         if ($self->testDetectIdentifier($text, 0, undef, 0, '#stay', undef)) {
668 0           return 1
669             }
670 0           return 0;
671             };
672              
673             sub parseCommentAlert {
674 0     0 0   my ($self, $text) = @_;
675             # attribute => 'Alert'
676             # char => '#'
677             # context => 'Alert'
678             # type => 'DetectChar'
679 0 0         if ($self->testDetectChar($text, '#', 0, 0, 0, undef, 0, 'Alert', 'Alert')) {
680 0           return 1
681             }
682 0           return 0;
683             };
684              
685             sub parseContainerClose {
686 0     0 0   my ($self, $text) = @_;
687             # attribute => 'Container'
688             # char => '>'
689             # context => 'Alert'
690             # type => 'DetectChar'
691 0 0         if ($self->testDetectChar($text, '>', 0, 0, 0, undef, 0, 'Alert', 'Container')) {
692 0           return 1
693             }
694 0           return 0;
695             };
696              
697             sub parseContainerOpen {
698 0     0 0   my ($self, $text) = @_;
699             # attribute => 'Container'
700             # char => '>'
701             # context => 'Alert'
702             # type => 'DetectChar'
703 0 0         if ($self->testDetectChar($text, '>', 0, 0, 0, undef, 0, 'Alert', 'Container')) {
704 0           return 1
705             }
706             # String => '[^#>]*'
707             # attribute => 'Attribute'
708             # context => '#stay'
709             # type => 'RegExpr'
710 0 0         if ($self->testRegExpr($text, '[^#>]*', 0, 0, 0, undef, 0, '#stay', 'Attribute')) {
711 0           return 1
712             }
713             # context => 'Comment Alert'
714             # type => 'IncludeRules'
715 0 0         if ($self->includeRules('Comment Alert', $text)) {
716 0           return 1
717             }
718 0           return 0;
719             };
720              
721             sub parseIntegerDirectives {
722 0     0 0   my ($self, $text) = @_;
723             # attribute => 'Float'
724             # context => 'Integer Directives'
725             # type => 'Float'
726 0 0         if ($self->testFloat($text, 0, undef, 0, 'Integer Directives', 'Float')) {
727 0           return 1
728             }
729             # attribute => 'Int'
730             # context => 'Integer Directives'
731             # type => 'Int'
732 0 0         if ($self->testInt($text, 0, undef, 0, 'Integer Directives', 'Int')) {
733 0           return 1
734             }
735             # context => 'Comment Alert'
736             # type => 'IncludeRules'
737 0 0         if ($self->includeRules('Comment Alert', $text)) {
738 0           return 1
739             }
740 0           return 0;
741             };
742              
743             sub parseStringDirectives {
744 0     0 0   my ($self, $text) = @_;
745             # String => '[^#]*'
746             # attribute => 'String'
747             # context => '#stay'
748             # type => 'RegExpr'
749 0 0         if ($self->testRegExpr($text, '[^#]*', 0, 0, 0, undef, 0, '#stay', 'String')) {
750 0           return 1
751             }
752             # context => 'Comment Alert'
753             # type => 'IncludeRules'
754 0 0         if ($self->includeRules('Comment Alert', $text)) {
755 0           return 1
756             }
757 0           return 0;
758             };
759              
760             sub parseapache {
761 0     0 0   my ($self, $text) = @_;
762             # String => 'String Directives'
763             # context => 'String Directives'
764             # type => 'keyword'
765 0 0         if ($self->testKeyword($text, 'String Directives', 0, undef, 0, 'String Directives', undef)) {
766 0           return 1
767             }
768             # String => 'Integer Directives'
769             # attribute => 'Directives'
770             # context => 'Integer Directives'
771             # type => 'keyword'
772 0 0         if ($self->testKeyword($text, 'Integer Directives', 0, undef, 0, 'Integer Directives', 'Directives')) {
773 0           return 1
774             }
775             # String => 'Alternative Directives'
776             # attribute => 'Directives'
777             # context => 'Alternative Directives'
778             # type => 'keyword'
779 0 0         if ($self->testKeyword($text, 'Alternative Directives', 0, undef, 0, 'Alternative Directives', 'Directives')) {
780 0           return 1
781             }
782             # String => '<\w+'
783             # attribute => 'Container'
784             # beginRegion => 'Container'
785             # context => 'Container Open'
786             # type => 'RegExpr'
787 0 0         if ($self->testRegExpr($text, '<\\w+', 0, 0, 0, undef, 0, 'Container Open', 'Container')) {
788 0           return 1
789             }
790             # String => '
791             # attribute => 'Container'
792             # context => 'Container Close'
793             # endRegion => 'Container'
794             # type => 'RegExpr'
795 0 0         if ($self->testRegExpr($text, '
796 0           return 1
797             }
798             # attribute => 'Comment'
799             # char => '#'
800             # context => 'Comment'
801             # firstNonSpace => 'true'
802             # type => 'DetectChar'
803 0 0         if ($self->testDetectChar($text, '#', 0, 0, 0, undef, 1, 'Comment', 'Comment')) {
804 0           return 1
805             }
806 0           return 0;
807             };
808              
809              
810             1;
811              
812             __END__