1#  Nested functions are not supported
2
3Rule ``arkts-no-nested-funcs``
4
5**Severity: error**
6
7ArkTS does not support nested functions. Use lambdas instead.
8
9
10## TypeScript
11
12
13```
14
15    function addNum(a: number, b: number): void {
16
17        // nested function:
18        function logToConsole(message: String): void {
19            console.log(message)
20        }
21
22        let result = a + b
23
24        // Invoking the nested function:
25        logToConsole("result is " + result)
26    }
27
28```
29
30## ArkTS
31
32
33```
34
35    function addNum(a: number, b: number): void {
36        // Use lambda instead of a nested function:
37        let logToConsole: (message: string) => void = (message: string): void => {
38            console.log(message)
39        }
40
41        let result = a + b
42
43        logToConsole("result is " + result)
44    }
45
46```
47
48
49