From 00c4ad7941c096842609cc21bafe0653986bdbeb Mon Sep 17 00:00:00 2001 From: Mark Hurd Date: Wed, 19 Oct 2016 00:27:29 +1030 Subject: [PATCH] Update lang-vb.js Add all Keywords from the current language, including NameOf. --- src/lang-vb.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/lang-vb.js b/src/lang-vb.js index 2159415c..1d4f5dd3 100644 --- a/src/lang-vb.js +++ b/src/lang-vb.js @@ -28,6 +28,10 @@ * http://msdn.microsoft.com/en-us/library/aa711638(VS.71).aspx defines the * visual basic grammar lexical grammar. * + * https://msdn.microsoft.com/en-us/library/dd409611.aspx lists the current + * keywords, except NameOf (and it includes Out in the Keywords, but its an + * Unreserved Keyword according to the current compiler). + * * @author mikesamuel@gmail.com */ @@ -48,7 +52,7 @@ PR['registerLangHandler']( [PR['PR_COMMENT'], /^[\'\u2018\u2019](?:_(?:\r\n?|[^\r]?)|[^\r\n_\u2028\u2029])*/, null, '\'\u2018\u2019'] ], [ - [PR['PR_KEYWORD'], /^(?:AddHandler|AddressOf|Alias|And|AndAlso|Ansi|As|Assembly|Auto|Boolean|ByRef|Byte|ByVal|Call|Case|Catch|CBool|CByte|CChar|CDate|CDbl|CDec|Char|CInt|Class|CLng|CObj|Const|CShort|CSng|CStr|CType|Date|Decimal|Declare|Default|Delegate|Dim|DirectCast|Do|Double|Each|Else|ElseIf|End|EndIf|Enum|Erase|Error|Event|Exit|Finally|For|Friend|Function|Get|GetType|GoSub|GoTo|Handles|If|Implements|Imports|In|Inherits|Integer|Interface|Is|Let|Lib|Like|Long|Loop|Me|Mod|Module|MustInherit|MustOverride|MyBase|MyClass|Namespace|New|Next|Not|NotInheritable|NotOverridable|Object|On|Option|Optional|Or|OrElse|Overloads|Overridable|Overrides|ParamArray|Preserve|Private|Property|Protected|Public|RaiseEvent|ReadOnly|ReDim|RemoveHandler|Resume|Return|Select|Set|Shadows|Shared|Short|Single|Static|Step|Stop|String|Structure|Sub|SyncLock|Then|Throw|To|Try|TypeOf|Unicode|Until|Variant|Wend|When|While|With|WithEvents|WriteOnly|Xor|EndIf|GoSub|Let|Variant|Wend)\b/i, null], + [PR['PR_KEYWORD'], /^(?:AddHandler|AddressOf|Alias|And|AndAlso|Ansi|As|Assembly|Auto|Boolean|ByRef|Byte|ByVal|Call|Case|Catch|CBool|CByte|CChar|CDate|CDbl|CDec|Char|CInt|Class|CLng|CObj|Const|Continue|CSByte|CShort|CSng|CStr|CType|CUInt|CULng|CUShort|Date|Decimal|Declare|Default|Delegate|Dim|DirectCast|Do|Double|Each|Else|ElseIf|End|EndIf|Enum|Erase|Error|Event|Exit|Finally|For|Friend|Function|Get|GetType|GetXMLNamespace|Global|GoSub|GoTo|Handles|If|Implements|Imports|In|Inherits|Integer|Interface|Is|IsNot|Let|Lib|Like|Long|Loop|Me|Mod|Module|MustInherit|MustOverride|MyBase|MyClass|NameOf|Namespace|Narrowing|New|Next|Not|NotInheritable|NotOverridable|Object|Of|On|Operator|Option|Optional|Or|OrElse|Overloads|Overridable|Overrides|ParamArray|Partial|Preserve|Private|Property|Protected|Public|RaiseEvent|ReadOnly|ReDim|RemoveHandler|Resume|Return|SByte|Select|Set|Shadows|Shared|Short|Single|Static|Step|Stop|String|Structure|Sub|SyncLock|Then|Throw|To|Try|TryCast|TypeOf|UInteger|ULong|Unicode|Until|UShort|Using|Variant|Wend|When|While|Widening|With|WithEvents|WriteOnly|Xor|EndIf|GoSub|Let|Variant|Wend)\b/i, null], // A second comment form [PR['PR_COMMENT'], /^REM\b[^\r\n\u2028\u2029]*/i], // A boolean, numeric, or date literal.