kopytko-formatter 0.1.5 → 0.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,14 +1,19 @@
1
1
  /**
2
2
  * BrightScript built-in functions and global objects.
3
3
  * Covers the standard BrightScript runtime as documented at:
4
- * https://developer.roku.com/docs/references/brightscript/language/global-functions.md
4
+ * https://developer.roku.com/dev/docs/global-math-functions
5
+ * https://developer.roku.com/dev/docs/global-string-functions
6
+ * https://developer.roku.com/dev/docs/global-utility-functions
7
+ * https://developer.roku.com/dev/docs/runtime-functions
5
8
  */
6
9
  export interface BrightScriptBuiltin {
7
10
  name: string;
8
11
  signature: string;
9
12
  returnType: string;
10
13
  description: string;
11
- category: 'math' | 'string' | 'type' | 'utility' | 'io' | 'filesystem' | 'object';
14
+ /** URL of the official Roku documentation page for this function */
15
+ docsUrl: string;
16
+ category: 'math' | 'string' | 'type' | 'utility' | 'io' | 'filesystem';
12
17
  }
13
18
  export declare const BRIGHTSCRIPT_BUILTINS: BrightScriptBuiltin[];
14
19
  export declare function findBuiltin(name: string): BrightScriptBuiltin | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"builtins.d.ts","sourceRoot":"","sources":["../../src/builtins.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,YAAY,GAAG,QAAQ,CAAC;CACnF;AAED,eAAO,MAAM,qBAAqB,EAAE,mBAAmB,EAsGtD,CAAC;AAMF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS,CAEzE;AAED,eAAO,MAAM,qBAAqB,UAQjC,CAAC;AAEF,0DAA0D;AAC1D,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,eAAe,GAAG,cAAc,CAAC;AAmBhG,qDAAqD;AACrD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,CAEnE"}
1
+ {"version":3,"file":"builtins.d.ts","sourceRoot":"","sources":["../../src/builtins.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,oEAAoE;IACpE,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,YAAY,CAAC;CACxE;AAOD,eAAO,MAAM,qBAAqB,EAAE,mBAAmB,EAwEtD,CAAC;AAMF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS,CAEzE;AAED,eAAO,MAAM,qBAAqB,UAQjC,CAAC;AAEF,0DAA0D;AAC1D,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,eAAe,GAAG,cAAc,CAAC;AAmBhG,qDAAqD;AACrD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,CAEnE"}
@@ -2,107 +2,85 @@
2
2
  /**
3
3
  * BrightScript built-in functions and global objects.
4
4
  * Covers the standard BrightScript runtime as documented at:
5
- * https://developer.roku.com/docs/references/brightscript/language/global-functions.md
5
+ * https://developer.roku.com/dev/docs/global-math-functions
6
+ * https://developer.roku.com/dev/docs/global-string-functions
7
+ * https://developer.roku.com/dev/docs/global-utility-functions
8
+ * https://developer.roku.com/dev/docs/runtime-functions
6
9
  */
7
10
  Object.defineProperty(exports, "__esModule", { value: true });
8
11
  exports.BRIGHTSCRIPT_KEYWORDS = exports.BRIGHTSCRIPT_BUILTINS = void 0;
9
12
  exports.findBuiltin = findBuiltin;
10
13
  exports.getKeywordCategory = getKeywordCategory;
14
+ const MATH_DOCS = 'https://developer.roku.com/dev/docs/global-math-functions';
15
+ const STRING_DOCS = 'https://developer.roku.com/dev/docs/global-string-functions';
16
+ const UTILITY_DOCS = 'https://developer.roku.com/dev/docs/global-utility-functions';
17
+ const RUNTIME_DOCS = 'https://developer.roku.com/dev/docs/runtime-functions';
11
18
  exports.BRIGHTSCRIPT_BUILTINS = [
12
19
  // Math
13
- { name: 'Abs', signature: 'Abs(x as Float) as Float', returnType: 'Float', description: 'Returns the absolute value of x.', category: 'math' },
14
- { name: 'Atn', signature: 'Atn(x as Float) as Float', returnType: 'Float', description: 'Returns the arctangent of x in radians.', category: 'math' },
15
- { name: 'Cos', signature: 'Cos(x as Float) as Float', returnType: 'Float', description: 'Returns the cosine of x (x in radians).', category: 'math' },
16
- { name: 'Exp', signature: 'Exp(x as Float) as Float', returnType: 'Float', description: 'Returns e^x.', category: 'math' },
17
- { name: 'Fix', signature: 'Fix(x as Float) as Integer', returnType: 'Integer', description: 'Truncates x toward zero (removes the fractional part). Unlike Int(), which floors toward negative infinity, Fix(-2.9) returns -2.', category: 'math' },
18
- { name: 'Int', signature: 'Int(x as Float) as Integer', returnType: 'Integer', description: 'Returns the largest integer less than or equal to x (floor). Int(-2.1) returns -3. Use Fix() to truncate toward zero instead.', category: 'math' },
19
- { name: 'Log', signature: 'Log(x as Float) as Float', returnType: 'Float', description: 'Returns the natural logarithm of x.', category: 'math' },
20
- { name: 'Rnd', signature: 'Rnd(range as Integer) as Integer', returnType: 'Integer', description: 'Returns a random integer between 1 and range inclusive. Rnd(0) returns a float between 0 and 1.', category: 'math' },
21
- { name: 'Sgn', signature: 'Sgn(x as Float) as Integer', returnType: 'Integer', description: 'Returns the sign of x: -1, 0, or 1.', category: 'math' },
22
- { name: 'Sin', signature: 'Sin(x as Float) as Float', returnType: 'Float', description: 'Returns the sine of x (x in radians).', category: 'math' },
23
- { name: 'Sqr', signature: 'Sqr(x as Float) as Float', returnType: 'Float', description: 'Returns the square root of x.', category: 'math' },
24
- { name: 'Tan', signature: 'Tan(x as Float) as Float', returnType: 'Float', description: 'Returns the tangent of x (x in radians).', category: 'math' },
20
+ { name: 'Abs', signature: 'Abs(x as Float) as Float', returnType: 'Float', description: 'Returns the absolute value of x.', docsUrl: MATH_DOCS, category: 'math' },
21
+ { name: 'Atn', signature: 'Atn(x as Float) as Float', returnType: 'Float', description: 'Returns the arctangent of x in radians.', docsUrl: MATH_DOCS, category: 'math' },
22
+ { name: 'CInt', signature: 'CInt(x as Dynamic) as Integer', returnType: 'Integer', description: 'Converts x to Integer (rounds to nearest).', docsUrl: MATH_DOCS, category: 'math' },
23
+ { name: 'Cos', signature: 'Cos(x as Float) as Float', returnType: 'Float', description: 'Returns the cosine of x (x in radians).', docsUrl: MATH_DOCS, category: 'math' },
24
+ { name: 'Csng', signature: 'Csng(x as Dynamic) as Float', returnType: 'Float', description: 'Returns a single-precision float representation of the argument.', docsUrl: MATH_DOCS, category: 'math' },
25
+ { name: 'Exp', signature: 'Exp(x as Float) as Float', returnType: 'Float', description: 'Returns e^x.', docsUrl: MATH_DOCS, category: 'math' },
26
+ { name: 'Fix', signature: 'Fix(x as Float) as Integer', returnType: 'Integer', description: 'Truncates x toward zero (removes the fractional part). Unlike Int(), which floors toward negative infinity, Fix(-2.9) returns -2.', docsUrl: MATH_DOCS, category: 'math' },
27
+ { name: 'Int', signature: 'Int(x as Float) as Integer', returnType: 'Integer', description: 'Returns the largest integer less than or equal to x (floor). Int(-2.1) returns -3. Use Fix() to truncate toward zero instead.', docsUrl: MATH_DOCS, category: 'math' },
28
+ { name: 'Log', signature: 'Log(x as Float) as Float', returnType: 'Float', description: 'Returns the natural logarithm of x.', docsUrl: MATH_DOCS, category: 'math' },
29
+ { name: 'Rnd', signature: 'Rnd(range as Integer) as Integer', returnType: 'Integer', description: 'Returns a random integer between 1 and range inclusive. Rnd(0) returns a float between 0 and 1.', docsUrl: MATH_DOCS, category: 'math' },
30
+ { name: 'Sgn', signature: 'Sgn(x as Float) as Integer', returnType: 'Integer', description: 'Returns the sign of x: -1, 0, or 1.', docsUrl: MATH_DOCS, category: 'math' },
31
+ { name: 'Sin', signature: 'Sin(x as Float) as Float', returnType: 'Float', description: 'Returns the sine of x (x in radians).', docsUrl: MATH_DOCS, category: 'math' },
32
+ { name: 'Sqr', signature: 'Sqr(x as Float) as Float', returnType: 'Float', description: 'Returns the square root of x.', docsUrl: MATH_DOCS, category: 'math' },
33
+ { name: 'Tan', signature: 'Tan(x as Float) as Float', returnType: 'Float', description: 'Returns the tangent of x (x in radians).', docsUrl: MATH_DOCS, category: 'math' },
25
34
  // String
26
- { name: 'Asc', signature: 'Asc(s as String) as Integer', returnType: 'Integer', description: 'Returns the ASCII code of the first character of s.', category: 'string' },
27
- { name: 'Chr', signature: 'Chr(ch as Integer) as String', returnType: 'String', description: 'Returns the character corresponding to ASCII code ch.', category: 'string' },
28
- { name: 'Instr', signature: 'Instr(start as Integer, haystack as String, needle as String) as Integer', returnType: 'Integer', description: 'Returns the position of needle in haystack starting from start (1-based), or 0 if not found.', category: 'string' },
29
- { name: 'InstrRev', signature: 'InstrRev(haystack as String, needle as String) as Integer', returnType: 'Integer', description: 'Returns the position of the last occurrence of needle in haystack (1-based), or 0 if not found. Use Instr() to find the first occurrence.', category: 'string' },
30
- { name: 'LCase', signature: 'LCase(s as String) as String', returnType: 'String', description: 'Returns s converted to lowercase.', category: 'string' },
31
- { name: 'Left', signature: 'Left(s as String, n as Integer) as String', returnType: 'String', description: 'Returns the leftmost n characters of s.', category: 'string' },
32
- { name: 'Len', signature: 'Len(s as String) as Integer', returnType: 'Integer', description: 'Returns the number of characters in s.', category: 'string' },
33
- { name: 'Mid', signature: 'Mid(s as String, start as Integer, length = -1 as Integer) as String', returnType: 'String', description: 'Returns a substring of s starting at start (1-based) with optional length.', category: 'string' },
34
- { name: 'Right', signature: 'Right(s as String, n as Integer) as String', returnType: 'String', description: 'Returns the rightmost n characters of s.', category: 'string' },
35
- { name: 'Str', signature: 'Str(n as Float) as String', returnType: 'String', description: 'Converts a number to its string representation.', category: 'string' },
36
- { name: 'StrI', signature: 'StrI(n as Integer, base = 10 as Integer) as String', returnType: 'String', description: 'Converts an integer to a string in the given base.', category: 'string' },
37
- { name: 'String', signature: 'String(n as Integer, ch as String) as String', returnType: 'String', description: 'Returns a string of n repetitions of ch.', category: 'string' },
38
- { name: 'StringI', signature: 'StringI(n as Integer, ch as Integer) as String', returnType: 'String', description: 'Returns a string of n repetitions of the character with ASCII code ch.', category: 'string' },
39
- { name: 'Substitute', signature: 'Substitute(template as String, arg0 as String, arg1 = "" as String, arg2 = "" as String, arg3 = "" as String) as String', returnType: 'String', description: 'Substitutes {0}..{3} placeholders in template with the given arguments.', category: 'string' },
40
- { name: 'Tr', signature: 'Tr(str as String) as String', returnType: 'String', description: 'Returns the localized translation of str from the channel\'s locale package. Returns str unchanged if no translation is found.', category: 'string' },
41
- { name: 'UCase', signature: 'UCase(s as String) as String', returnType: 'String', description: 'Returns s converted to uppercase.', category: 'string' },
42
- { name: 'Val', signature: 'Val(s as String, base = 10 as Integer) as Float', returnType: 'Float', description: 'Parses s as a number in the given base.', category: 'string' },
43
- // Type conversion
44
- { name: 'Box', signature: 'Box(x as Dynamic) as Dynamic', returnType: 'Dynamic', description: 'Boxes a primitive value into its corresponding object type (e.g. Integer roInt, Float roFloat, String roString). Returns objects unchanged.', category: 'type' },
45
- { name: 'CBool', signature: 'CBool(x as Dynamic) as Boolean', returnType: 'Boolean', description: 'Converts x to Boolean. Non-zero numbers and non-empty strings become true; zero, empty string, and invalid become false.', category: 'type' },
46
- { name: 'CDbl', signature: 'CDbl(x as Dynamic) as Double', returnType: 'Double', description: 'Converts x to Double.', category: 'type' },
47
- { name: 'CFloat', signature: 'CFloat(x as Dynamic) as Float', returnType: 'Float', description: 'Converts x to Float (same as Csng).', category: 'type' },
48
- { name: 'CInt', signature: 'CInt(x as Dynamic) as Integer', returnType: 'Integer', description: 'Converts x to Integer (rounds to nearest).', category: 'type' },
49
- { name: 'CLng', signature: 'CLng(x as Dynamic) as LongInteger', returnType: 'LongInteger', description: 'Converts x to LongInteger.', category: 'type' },
50
- { name: 'Csng', signature: 'Csng(x as Dynamic) as Float', returnType: 'Float', description: 'Converts x to single-precision Float. Equivalent to CFloat().', category: 'type' },
51
- { name: 'CObj', signature: 'CObj(x as Dynamic) as Object', returnType: 'Object', description: 'Casts x to Object type. Used to pass a value as a generic Object reference.', category: 'type' },
52
- { name: 'CStr', signature: 'CStr(x as Dynamic) as String', returnType: 'String', description: 'Converts x to String.', category: 'type' },
53
- { name: 'Unbox', signature: 'Unbox(x as Dynamic) as Dynamic', returnType: 'Dynamic', description: 'Extracts the primitive value from a boxed object (e.g. roInt → Integer, roFloat → Float, roString → String). Returns non-object values unchanged. Inverse of Box().', category: 'type' },
54
- // Type inspection
55
- { name: 'GetInterface', signature: 'GetInterface(obj as Dynamic, ifName as String) as Dynamic', returnType: 'Dynamic', description: 'Returns the named interface of obj, or invalid if obj does not implement it. Used to check interface support at runtime.', category: 'type' },
56
- { name: 'IsArray', signature: 'IsArray(obj as Dynamic) as Boolean', returnType: 'Boolean', description: 'Returns true if obj is an roArray.', category: 'type' },
57
- { name: 'IsAssociativeArray', signature: 'IsAssociativeArray(obj as Dynamic) as Boolean', returnType: 'Boolean', description: 'Returns true if obj is an roAssociativeArray.', category: 'type' },
58
- { name: 'IsBoolean', signature: 'IsBoolean(obj as Dynamic) as Boolean', returnType: 'Boolean', description: 'Returns true if obj is a Boolean.', category: 'type' },
59
- { name: 'IsDefined', signature: 'IsDefined(name as String) as Boolean', returnType: 'Boolean', description: 'Returns true if a variable with the given name is defined in the current scope.', category: 'type' },
60
- { name: 'IsDouble', signature: 'IsDouble(obj as Dynamic) as Boolean', returnType: 'Boolean', description: 'Returns true if obj is a Double.', category: 'type' },
61
- { name: 'IsFloat', signature: 'IsFloat(obj as Dynamic) as Boolean', returnType: 'Boolean', description: 'Returns true if obj is a Float.', category: 'type' },
62
- { name: 'IsFunction', signature: 'IsFunction(obj as Dynamic) as Boolean', returnType: 'Boolean', description: 'Returns true if obj is a Function reference.', category: 'type' },
63
- { name: 'IsInt', signature: 'IsInt(obj as Dynamic) as Boolean', returnType: 'Boolean', description: 'Returns true if obj is an Integer.', category: 'type' },
64
- { name: 'IsInvalid', signature: 'IsInvalid(obj as Dynamic) as Boolean', returnType: 'Boolean', description: 'Returns true if obj is invalid.', category: 'type' },
65
- { name: 'IsLongInteger', signature: 'IsLongInteger(obj as Dynamic) as Boolean', returnType: 'Boolean', description: 'Returns true if obj is a LongInteger.', category: 'type' },
66
- { name: 'IsList', signature: 'IsList(obj as Dynamic) as Boolean', returnType: 'Boolean', description: 'Returns true if obj is an roList.', category: 'type' },
67
- { name: 'IsNaN', signature: 'IsNaN(x as Float) as Boolean', returnType: 'Boolean', description: 'Returns true if x is NaN (not-a-number), e.g. from 0/0 or Sqr of a negative number.', category: 'type' },
68
- { name: 'IsNode', signature: 'IsNode(obj as Dynamic) as Boolean', returnType: 'Boolean', description: 'Returns true if obj is an roSGNode (SceneGraph node).', category: 'type' },
69
- { name: 'IsObject', signature: 'IsObject(obj as Dynamic) as Boolean', returnType: 'Boolean', description: 'Returns true if obj is a BrightScript object (roAssociativeArray, roArray, roSGNode, etc).', category: 'type' },
70
- { name: 'IsString', signature: 'IsString(obj as Dynamic) as Boolean', returnType: 'Boolean', description: 'Returns true if obj is a String.', category: 'type' },
71
- { name: 'Type', signature: 'Type(obj as Dynamic, version = 3 as Integer) as String', returnType: 'String', description: 'Returns the type name of obj as a string (e.g. "roArray", "Integer", "String", "invalid").', category: 'type' },
35
+ { name: 'Asc', signature: 'Asc(s as String) as Integer', returnType: 'Integer', description: 'Returns the ASCII code of the first character of s.', docsUrl: STRING_DOCS, category: 'string' },
36
+ { name: 'Chr', signature: 'Chr(ch as Integer) as String', returnType: 'String', description: 'Returns the character corresponding to ASCII code ch.', docsUrl: STRING_DOCS, category: 'string' },
37
+ { name: 'Instr', signature: 'Instr(start as Integer, haystack as String, needle as String) as Integer', returnType: 'Integer', description: 'Returns the position of needle in haystack starting from start (1-based), or 0 if not found.', docsUrl: STRING_DOCS, category: 'string' },
38
+ { name: 'LCase', signature: 'LCase(s as String) as String', returnType: 'String', description: 'Returns s converted to lowercase.', docsUrl: STRING_DOCS, category: 'string' },
39
+ { name: 'Left', signature: 'Left(s as String, n as Integer) as String', returnType: 'String', description: 'Returns the leftmost n characters of s.', docsUrl: STRING_DOCS, category: 'string' },
40
+ { name: 'Len', signature: 'Len(s as String) as Integer', returnType: 'Integer', description: 'Returns the number of characters in s.', docsUrl: STRING_DOCS, category: 'string' },
41
+ { name: 'Mid', signature: 'Mid(s as String, start as Integer, length = -1 as Integer) as String', returnType: 'String', description: 'Returns a substring of s starting at start (1-based) with optional length.', docsUrl: STRING_DOCS, category: 'string' },
42
+ { name: 'Right', signature: 'Right(s as String, n as Integer) as String', returnType: 'String', description: 'Returns the rightmost n characters of s.', docsUrl: STRING_DOCS, category: 'string' },
43
+ { name: 'Str', signature: 'Str(n as Float) as String', returnType: 'String', description: 'Converts a number to its string representation.', docsUrl: STRING_DOCS, category: 'string' },
44
+ { name: 'StrI', signature: 'StrI(n as Integer, base = 10 as Integer) as String', returnType: 'String', description: 'Converts an integer to a string in the given base.', docsUrl: STRING_DOCS, category: 'string' },
45
+ { name: 'String', signature: 'String(n as Integer, ch as String) as String', returnType: 'String', description: 'Returns a string of n repetitions of ch.', docsUrl: STRING_DOCS, category: 'string' },
46
+ { name: 'StringI', signature: 'StringI(n as Integer, ch as Integer) as String', returnType: 'String', description: 'Returns a string of n repetitions of the character with ASCII code ch.', docsUrl: STRING_DOCS, category: 'string' },
47
+ { name: 'Substitute', signature: 'Substitute(template as String, arg0 as String, arg1 = "" as String, arg2 = "" as String, arg3 = "" as String) as String', returnType: 'String', description: 'Substitutes {0}..{3} placeholders in template with the given arguments.', docsUrl: STRING_DOCS, category: 'string' },
48
+ { name: 'Tr', signature: 'Tr(str as String) as String', returnType: 'String', description: 'Returns the localized translation of str from the channel\'s locale package. Returns str unchanged if no translation is found.', docsUrl: UTILITY_DOCS, category: 'string' },
49
+ { name: 'UCase', signature: 'UCase(s as String) as String', returnType: 'String', description: 'Returns s converted to uppercase.', docsUrl: STRING_DOCS, category: 'string' },
50
+ { name: 'Val', signature: 'Val(s as String, base = 10 as Integer) as Float', returnType: 'Float', description: 'Parses s as a number in the given base.', docsUrl: STRING_DOCS, category: 'string' },
51
+ // Type
52
+ { name: 'Box', signature: 'Box(x as Dynamic) as Dynamic', returnType: 'Dynamic', description: 'Boxes a primitive value into its corresponding object type (e.g. Integer → roInt, Float → roFloat, String → roString). Returns objects unchanged.', docsUrl: RUNTIME_DOCS, category: 'type' },
53
+ { name: 'GetInterface', signature: 'GetInterface(obj as Dynamic, ifName as String) as Dynamic', returnType: 'Dynamic', description: 'Returns the named interface of obj, or invalid if obj does not implement it. Used to check interface support at runtime.', docsUrl: UTILITY_DOCS, category: 'type' },
54
+ { name: 'Type', signature: 'Type(obj as Dynamic, version = 3 as Integer) as String', returnType: 'String', description: 'Returns the type name of obj as a string (e.g. "roArray", "Integer", "String", "invalid").', docsUrl: RUNTIME_DOCS, category: 'type' },
72
55
  // Utility
73
- { name: 'CreateObject', signature: 'CreateObject(objectName as String, ...args) as Dynamic', returnType: 'Dynamic', description: 'Creates a BrightScript object of the given type. Returns invalid if the object name is unknown.', category: 'utility' },
74
- { name: 'Eval', signature: 'Eval(code as String) as Dynamic', returnType: 'Dynamic', description: 'Deprecated. Dynamically compiles and executes the BrightScript code string at runtime. Avoid in new code — use normal function calls instead.', category: 'utility' },
75
- { name: 'FindMemberFunction', signature: 'FindMemberFunction(obj as Dynamic, funcName as String) as Dynamic', returnType: 'Dynamic', description: 'Returns a function reference for the named member function on obj, or invalid if not found. Useful for dynamic dispatch.', category: 'utility' },
76
- { name: 'GetGlobalAA', signature: 'GetGlobalAA() as Object', returnType: 'Object', description: 'Returns the global associative array shared across all BrightScript code in the main thread.', category: 'utility' },
77
- { name: 'GetLastRunCompileError', signature: 'GetLastRunCompileError() as Object', returnType: 'Object', description: 'Returns an roAssociativeArray describing the last compile-time error, or invalid if no error occurred. Keys: number, message, file, lineNumber.', category: 'utility' },
78
- { name: 'GetLastRunRuntimeError', signature: 'GetLastRunRuntimeError() as Integer', returnType: 'Integer', description: 'Returns the error code from the last Run() call. Returns 0 if no error occurred. Only meaningful after Run() — for general runtime exceptions use try/catch.', category: 'utility' },
79
- { name: 'ObjFun', signature: 'ObjFun(obj as Dynamic, funcName as String, ...args) as Dynamic', returnType: 'Dynamic', description: 'Calls the named member function on obj with the provided arguments. Equivalent to obj.funcName(...args) but with a dynamic function name.', category: 'utility' },
80
- { name: 'FormatDrive', signature: 'FormatDrive(drive as String, fs_type as String) as Boolean', returnType: 'Boolean', description: 'Formats the storage volume at drive with the given filesystem type (e.g. "fat32"). Returns true on success.', category: 'utility' },
81
- { name: 'Pos', signature: 'Pos(dummy as Integer) as Integer', returnType: 'Integer', description: 'Returns the current column position of the print cursor on the current output line. The argument is ignored; pass 0.', category: 'utility' },
82
- { name: 'Mktime', signature: 'Mktime(time as Object) as LongInteger', returnType: 'LongInteger', description: 'Converts a date/time associative array to a Unix epoch (seconds since 1970-01-01 UTC). The AA must contain integer fields: year, month, day, hour, minute, second.', category: 'utility' },
83
- { name: 'RebootSystem', signature: 'RebootSystem()', returnType: 'Void', description: 'Reboots the Roku device.', category: 'utility' },
84
- { name: 'Run', signature: 'Run(filename as String, ...args) as Dynamic', returnType: 'Dynamic', description: 'Deprecated. Compiles and executes a BrightScript source file at runtime. Returns the value passed to End or Stop. Avoid in new code.', category: 'utility' },
85
- { name: 'RunGarbageCollector', signature: 'RunGarbageCollector() as Object', returnType: 'Object', description: 'Runs the BrightScript garbage collector and returns an roAssociativeArray with collection statistics.', category: 'utility' },
86
- { name: 'StrToI', signature: 'StrToI(str as String) as Dynamic', returnType: 'Dynamic', description: 'Converts the string str to an integer. Returns 0 if the string cannot be parsed. Unlike Val(), which returns a Float, StrToI() returns an Integer (or invalid on failure).', category: 'utility' },
87
- { name: 'Tab', signature: 'Tab(col as Integer) as String', returnType: 'String', description: 'Used in print statements to advance output to column col. If the cursor is already past col, moves to col on the next line. Only meaningful inside a print statement.', category: 'utility' },
88
- { name: 'Sleep', signature: 'Sleep(milliseconds as Integer)', returnType: 'Void', description: 'Pauses execution for the given number of milliseconds.', category: 'utility' },
89
- { name: 'UpTime', signature: 'UpTime(dummy as Integer) as Float', returnType: 'Float', description: 'Returns the number of seconds since the system last rebooted. The argument is ignored; pass 0.', category: 'utility' },
90
- { name: 'Wait', signature: 'Wait(timeout as Integer, port as Object) as Object', returnType: 'Object', description: 'Waits up to timeout ms for a message on port. Returns the message object, or invalid on timeout. Pass 0 to wait indefinitely.', category: 'utility' },
91
- // JSON / XML
92
- { name: 'FormatJson', signature: 'FormatJson(obj as Object, flags = 0 as Integer) as String', returnType: 'String', description: 'Serializes obj to a JSON string.', category: 'utility' },
93
- { name: 'ParseJson', signature: 'ParseJson(json as String, flags = "" as String) as Dynamic', returnType: 'Dynamic', description: 'Parses a JSON string into a BrightScript object. Optional flags: "i" for case-insensitive keys, "d" for double-precision numbers.', category: 'utility' },
94
- { name: 'ParseXML', signature: 'ParseXML(xml as String) as Object', returnType: 'Object', description: 'Parses an XML string and returns an roXMLElement.', category: 'utility' },
56
+ { name: 'CreateObject', signature: 'CreateObject(objectName as String, ...args) as Dynamic', returnType: 'Dynamic', description: 'Creates a BrightScript object of the given type. Returns invalid if the object name is unknown.', docsUrl: RUNTIME_DOCS, category: 'utility' },
57
+ { name: 'Eval', signature: 'Eval(code as String) as Dynamic', returnType: 'Dynamic', description: 'Deprecated. Dynamically compiles and executes the BrightScript code string at runtime. Avoid in new code — use normal function calls instead.', docsUrl: RUNTIME_DOCS, category: 'utility' },
58
+ { name: 'FindMemberFunction', signature: 'FindMemberFunction(obj as Dynamic, funcName as String) as Dynamic', returnType: 'Dynamic', description: 'Returns a function reference for the named member function on obj, or invalid if not found. Useful for dynamic dispatch.', docsUrl: UTILITY_DOCS, category: 'utility' },
59
+ { name: 'FormatDrive', signature: 'FormatDrive(drive as String, fs_type as String) as Boolean', returnType: 'Boolean', description: 'Formats the storage volume at drive with the given filesystem type (e.g. "fat32"). Returns true on success.', docsUrl: UTILITY_DOCS, category: 'utility' },
60
+ { name: 'GetGlobalAA', signature: 'GetGlobalAA() as Object', returnType: 'Object', description: 'Returns the global associative array shared across all BrightScript code in the main thread.', docsUrl: RUNTIME_DOCS, category: 'utility' },
61
+ { name: 'GetLastRunCompileError', signature: 'GetLastRunCompileError() as Object', returnType: 'Object', description: 'Returns an roAssociativeArray describing the last compile-time error, or invalid if no error occurred. Keys: number, message, file, lineNumber.', docsUrl: RUNTIME_DOCS, category: 'utility' },
62
+ { name: 'GetLastRunRuntimeError', signature: 'GetLastRunRuntimeError() as Integer', returnType: 'Integer', description: 'Returns the error code from the last Run() call. Returns 0 if no error occurred. Only meaningful after Run() for general runtime exceptions use try/catch.', docsUrl: RUNTIME_DOCS, category: 'utility' },
63
+ { name: 'RebootSystem', signature: 'RebootSystem()', returnType: 'Void', description: 'Reboots the Roku device.', docsUrl: UTILITY_DOCS, category: 'utility' },
64
+ { name: 'Run', signature: 'Run(filename as String, ...args) as Dynamic', returnType: 'Dynamic', description: 'Deprecated. Compiles and executes a BrightScript source file at runtime. Returns the value passed to End or Stop. Avoid in new code.', docsUrl: RUNTIME_DOCS, category: 'utility' },
65
+ { name: 'RunGarbageCollector', signature: 'RunGarbageCollector() as Object', returnType: 'Object', description: 'Runs the BrightScript garbage collector and returns an roAssociativeArray with collection statistics.', docsUrl: UTILITY_DOCS, category: 'utility' },
66
+ { name: 'Sleep', signature: 'Sleep(milliseconds as Integer)', returnType: 'Void', description: 'Pauses execution for the given number of milliseconds.', docsUrl: UTILITY_DOCS, category: 'utility' },
67
+ { name: 'StrToI', signature: 'StrToI(str as String) as Dynamic', returnType: 'Dynamic', description: 'Converts the string str to an integer. Returns 0 if the string cannot be parsed. Unlike Val(), which returns a Float, StrToI() returns an Integer (or invalid on failure).', docsUrl: UTILITY_DOCS, category: 'utility' },
68
+ { name: 'UpTime', signature: 'UpTime(dummy as Integer) as Float', returnType: 'Float', description: 'Returns the number of seconds since the system last rebooted. The argument is ignored; pass 0.', docsUrl: UTILITY_DOCS, category: 'utility' },
69
+ { name: 'Wait', signature: 'Wait(timeout as Integer, port as Object) as Object', returnType: 'Object', description: 'Waits up to timeout ms for a message on port. Returns the message object, or invalid on timeout. Pass 0 to wait indefinitely.', docsUrl: UTILITY_DOCS, category: 'utility' },
70
+ // JSON
71
+ { name: 'FormatJson', signature: 'FormatJson(obj as Object, flags = 0 as Integer) as String', returnType: 'String', description: 'Serializes obj to a JSON string.', docsUrl: UTILITY_DOCS, category: 'utility' },
72
+ { name: 'ParseJson', signature: 'ParseJson(json as String, flags = "" as String) as Dynamic', returnType: 'Dynamic', description: 'Parses a JSON string into a BrightScript object. Optional flags: "i" for case-insensitive keys, "d" for double-precision numbers.', docsUrl: UTILITY_DOCS, category: 'utility' },
95
73
  // IO
96
- { name: 'ReadAsciiFile', signature: 'ReadAsciiFile(filePath as String) as String', returnType: 'String', description: 'Reads the content of a text file and returns it as a string.', category: 'io' },
97
- { name: 'WriteAsciiFile', signature: 'WriteAsciiFile(filePath as String, text as String) as Boolean', returnType: 'Boolean', description: 'Writes text to a file at filePath. Returns true on success.', category: 'io' },
74
+ { name: 'ReadAsciiFile', signature: 'ReadAsciiFile(filePath as String) as String', returnType: 'String', description: 'Reads the content of a text file and returns it as a string.', docsUrl: UTILITY_DOCS, category: 'io' },
75
+ { name: 'WriteAsciiFile', signature: 'WriteAsciiFile(filePath as String, text as String) as Boolean', returnType: 'Boolean', description: 'Writes text to a file at filePath. Returns true on success.', docsUrl: UTILITY_DOCS, category: 'io' },
98
76
  // Filesystem
99
- { name: 'CopyFile', signature: 'CopyFile(source as String, destination as String) as Boolean', returnType: 'Boolean', description: 'Copies the file at source to destination. Returns true on success.', category: 'filesystem' },
100
- { name: 'CreateDirectory', signature: 'CreateDirectory(path as String) as Boolean', returnType: 'Boolean', description: 'Creates a new directory at path. Returns true on success. Does not create intermediate directories.', category: 'filesystem' },
101
- { name: 'DeleteDirectory', signature: 'DeleteDirectory(path as String) as Boolean', returnType: 'Boolean', description: 'Deletes the directory at path. The directory must be empty. Returns true on success.', category: 'filesystem' },
102
- { name: 'DeleteFile', signature: 'DeleteFile(path as String) as Boolean', returnType: 'Boolean', description: 'Deletes the file at path. Returns true on success.', category: 'filesystem' },
103
- { name: 'ListDir', signature: 'ListDir(path as String) as Object', returnType: 'Object', description: 'Returns an roArray of strings containing the names (not full paths) of all files and directories in path.', category: 'filesystem' },
104
- { name: 'MatchFiles', signature: 'MatchFiles(path as String, pattern as String) as Object', returnType: 'Object', description: 'Returns an roArray of filenames in path whose names match the shell-style glob pattern. Matches only filenames, not subdirectory contents.', category: 'filesystem' },
105
- { name: 'MoveFile', signature: 'MoveFile(source as String, destination as String) as Boolean', returnType: 'Boolean', description: 'Moves (renames) the file at source to destination. Returns true on success.', category: 'filesystem' },
77
+ { name: 'CopyFile', signature: 'CopyFile(source as String, destination as String) as Boolean', returnType: 'Boolean', description: 'Copies the file at source to destination. Returns true on success.', docsUrl: UTILITY_DOCS, category: 'filesystem' },
78
+ { name: 'CreateDirectory', signature: 'CreateDirectory(path as String) as Boolean', returnType: 'Boolean', description: 'Creates a new directory at path. Returns true on success. Does not create intermediate directories.', docsUrl: UTILITY_DOCS, category: 'filesystem' },
79
+ { name: 'DeleteDirectory', signature: 'DeleteDirectory(path as String) as Boolean', returnType: 'Boolean', description: 'Deletes the directory at path. The directory must be empty. Returns true on success.', docsUrl: UTILITY_DOCS, category: 'filesystem' },
80
+ { name: 'DeleteFile', signature: 'DeleteFile(path as String) as Boolean', returnType: 'Boolean', description: 'Deletes the file at path. Returns true on success.', docsUrl: UTILITY_DOCS, category: 'filesystem' },
81
+ { name: 'ListDir', signature: 'ListDir(path as String) as Object', returnType: 'Object', description: 'Returns an roArray of strings containing the names (not full paths) of all files and directories in path.', docsUrl: UTILITY_DOCS, category: 'filesystem' },
82
+ { name: 'MatchFiles', signature: 'MatchFiles(path as String, pattern as String) as Object', returnType: 'Object', description: 'Returns an roArray of filenames in path whose names match the shell-style glob pattern. Matches only filenames, not subdirectory contents.', docsUrl: UTILITY_DOCS, category: 'filesystem' },
83
+ { name: 'MoveFile', signature: 'MoveFile(source as String, destination as String) as Boolean', returnType: 'Boolean', description: 'Moves (renames) the file at source to destination. Returns true on success.', docsUrl: UTILITY_DOCS, category: 'filesystem' },
106
84
  ];
107
85
  const _builtinMap = new Map(exports.BRIGHTSCRIPT_BUILTINS.map((b) => [b.name.toLowerCase(), b]));
108
86
  function findBuiltin(name) {
@@ -1 +1 @@
1
- {"version":3,"file":"builtins.js","sourceRoot":"","sources":["../../src/builtins.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"builtins.js","sourceRoot":"","sources":["../../src/builtins.ts"],"names":[],"mappings":"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"}
@@ -870,35 +870,28 @@ function passIndentation(lines, config) {
870
870
  }
871
871
  if (isDeindentLine(trimmed) && indentLevel > 0)
872
872
  indentLevel--;
873
- if (/^[}\]]/.test(trimmed) && !isDeindentLine(trimmed)) {
874
- let closers = 0;
873
+ // Count leading ] and } closers for bracket de-indentation
874
+ let leadingClosers = 0;
875
+ if (!isDeindentLine(trimmed)) {
875
876
  for (const ch of trimmed) {
876
877
  if (ch === '}' || ch === ']')
877
- closers++;
878
+ leadingClosers++;
878
879
  else
879
880
  break;
880
881
  }
881
- indentLevel = Math.max(0, indentLevel - closers);
882
+ if (leadingClosers > 0)
883
+ indentLevel = Math.max(0, indentLevel - leadingClosers);
882
884
  }
883
885
  const result = indentUnit.repeat(indentLevel + chainExtra) + trimmed;
884
886
  if (isIndentLine(trimmed))
885
887
  indentLevel++;
886
- if (!/^[}\]]/.test(trimmed)) {
887
- let opens = 0;
888
- let depth = 0;
889
- for (const ch of trimmed) {
890
- if (ch === '{' || ch === '[') {
891
- depth++;
892
- opens++;
893
- }
894
- else if (ch === '}' || ch === ']') {
895
- depth--;
896
- opens = Math.max(0, opens - 1);
897
- }
898
- }
899
- if (depth > 0)
900
- indentLevel += depth;
901
- }
888
+ // Bracket depth: net change in [ ] { } on this line (string-aware).
889
+ // trailingOpens = netDepth + leadingClosers gives the effective opens
890
+ // remaining at the end of the line (leading closers were already applied).
891
+ const netDepth = netContainerDepth(trimmed);
892
+ const trailingOpens = netDepth + leadingClosers;
893
+ if (trailingOpens !== 0)
894
+ indentLevel = Math.max(0, indentLevel + trailingOpens);
902
895
  // Anonymous function expressions: trailing comment after return type is allowed.
903
896
  if (/\b(?:function|sub)\s*\([^)]*\)(?:\s+as\s+\w+)?\s*(?:'.*)?$/i.test(trimmed) && !/^(?:function|sub)\b/i.test(trimmed)) {
904
897
  indentLevel++;
@@ -1160,6 +1153,30 @@ function isAnonFunctionOpener(t) {
1160
1153
  && !/^(?:function|sub)\b/i.test(t)
1161
1154
  && !t.startsWith("'");
1162
1155
  }
1156
+ /** Net change in [], {} depth on a line, ignoring string literals and tick-comments. Does NOT track (). */
1157
+ function netContainerDepth(line) {
1158
+ let depth = 0;
1159
+ let inStr = false;
1160
+ for (let i = 0; i < line.length; i++) {
1161
+ const ch = line[i];
1162
+ if (ch === '"') {
1163
+ if (inStr && line[i + 1] === '"') {
1164
+ i++;
1165
+ continue;
1166
+ }
1167
+ inStr = !inStr;
1168
+ }
1169
+ else if (!inStr) {
1170
+ if (ch === "'")
1171
+ break;
1172
+ if (ch === '{' || ch === '[')
1173
+ depth++;
1174
+ else if (ch === '}' || ch === ']')
1175
+ depth--;
1176
+ }
1177
+ }
1178
+ return depth;
1179
+ }
1163
1180
  /** Net change in (), [], {} depth on a line, ignoring string literals and tick-comments. */
1164
1181
  function netBracketDepth(line) {
1165
1182
  let depth = 0;
@@ -1297,6 +1314,11 @@ function transformCodeSegment(code, casing, userFuncMap) {
1297
1314
  return match;
1298
1315
  }
1299
1316
  if (_builtinMap.has(lower)) {
1317
+ // Only treat as a built-in function when it is actually being called.
1318
+ // Identifiers that happen to share a name with a built-in (e.g. a
1319
+ // parameter named `str`) should not be re-cased.
1320
+ if (!/^\s*\(/.test(restAfter))
1321
+ return match;
1300
1322
  const canonical = _builtinMap.get(lower);
1301
1323
  if (casing.builtins !== 'NoChange') {
1302
1324
  return (0, casing_1.applyCasingWithOverrides)(canonical, casing.builtins, exactMap);
@@ -1 +1 @@
1
- {"version":3,"file":"formatter.js","sourceRoot":"","sources":["../../src/formatter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formatter.js","sourceRoot":"","sources":["../../src/formatter.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kopytko-formatter",
3
- "version": "0.1.5",
3
+ "version": "0.1.6",
4
4
  "description": "BrightScript formatter and code style checker for the Kopytko ecosystem. Use as a CLI tool or import as a library.",
5
5
  "license": "MIT",
6
6
  "author": "bchelkowski",