1
0
dust/tree-sitter-dust/corpus/functions.txt

186 lines
4.4 KiB
Plaintext
Raw Normal View History

2023-10-31 15:21:13 -04:00
================================================================================
Simple Function
2023-10-31 15:21:13 -04:00
================================================================================
2023-12-05 16:42:11 -05:00
fn || { "Hiya" }
2023-10-31 15:21:13 -04:00
--------------------------------------------------------------------------------
(root
2023-11-10 20:44:03 -05:00
(statement
2023-12-01 22:54:25 -05:00
(expression
(value
(function
(block
(statement
(expression
(value
(string))))))))))
================================================================================
Function Assignment
================================================================================
2023-12-05 16:42:11 -05:00
foobar <(str) -> str> = fn |text| { text }
2023-12-01 22:54:25 -05:00
--------------------------------------------------------------------------------
(root
(statement
(assignment
2023-11-10 20:44:03 -05:00
(identifier)
2023-12-05 16:42:11 -05:00
(type_definition
(type
(type)
(type)))
2023-12-01 22:54:25 -05:00
(assignment_operator)
(statement
(expression
(value
(function
(identifier)
(block
(statement
(expression
(identifier)))))))))))
2023-10-31 18:18:39 -04:00
2023-10-31 15:21:13 -04:00
================================================================================
Function Call
2023-10-31 15:21:13 -04:00
================================================================================
(foobar "Hiya")
2023-10-31 15:21:13 -04:00
--------------------------------------------------------------------------------
(root
2023-11-10 20:44:03 -05:00
(statement
(expression
(function_call
2023-12-02 02:34:23 -05:00
(expression
(identifier))
2023-11-10 20:44:03 -05:00
(expression
(value
(string)))))))
2023-10-31 15:21:13 -04:00
================================================================================
Complex Function
2023-10-31 15:21:13 -04:00
================================================================================
2023-12-05 16:42:11 -05:00
fn |message number| {
(output message)
(output number)
}
2023-10-31 15:21:13 -04:00
--------------------------------------------------------------------------------
(root
2023-11-10 20:44:03 -05:00
(statement
2023-12-01 22:54:25 -05:00
(expression
(value
(function
(identifier)
(identifier)
(block
(statement
(expression
(function_call
2023-12-02 02:34:23 -05:00
(expression
(identifier))
2023-12-01 22:54:25 -05:00
(expression
(identifier)))))
(statement
(expression
(function_call
2023-12-02 02:34:23 -05:00
(expression
(identifier))
2023-12-01 22:54:25 -05:00
(expression
(identifier)))))))))))
2023-10-31 15:21:13 -04:00
================================================================================
Complex Function Call
2023-10-31 15:21:13 -04:00
================================================================================
(foobar
"hi"
42
2023-11-28 11:01:38 -05:00
{
x = 1
y = 2
2023-11-28 11:01:38 -05:00
}
)
2023-10-31 15:21:13 -04:00
--------------------------------------------------------------------------------
(root
2023-11-10 20:44:03 -05:00
(statement
(expression
(function_call
2023-12-02 02:34:23 -05:00
(expression
(identifier))
2023-11-10 20:44:03 -05:00
(expression
(value
(string)))
(expression
(value
(integer)))
(expression
(value
(map
(identifier)
(statement
(expression
(value
(integer))))
(identifier)
(statement
(expression
(value
(integer)))))))))))
2023-12-05 16:42:11 -05:00
================================================================================
Callback Function
================================================================================
foobar <(() -> str) -> str> = fn |cb| {
(cb)
}
(foobar fn || { 'Hiya' })
--------------------------------------------------------------------------------
(root
(statement
(assignment
(identifier)
(type_definition
(type
(type
(type))
(type)))
(assignment_operator)
(statement
(expression
(value
(function
(identifier)
(block
(statement
(expression
(function_call
(expression
(identifier))))))))))))
(statement
(expression
(function_call
(expression
(identifier))
(expression
(value
(function
(block
(statement
(expression
(value
(string))))))))))))