mirror of
https://github.com/sharkdp/bat.git
synced 2025-08-17 11:32:54 +02:00
feat: add Nim syntax test file
This commit is contained in:
41
tests/syntax-tests/source/nim/main.nim
Normal file
41
tests/syntax-tests/source/nim/main.nim
Normal file
@ -0,0 +1,41 @@
|
||||
import json
|
||||
|
||||
const
|
||||
message = "hello world"
|
||||
multiLine = """
|
||||
foo
|
||||
bar
|
||||
"""
|
||||
numbers = @[1, 2, 3]
|
||||
|
||||
type Options = enum
|
||||
A,
|
||||
B,
|
||||
C
|
||||
|
||||
## Top-level comment
|
||||
type
|
||||
SomeStruct* = ref object
|
||||
value*: string
|
||||
|
||||
proc someFunc*(): string =
|
||||
## Function docs
|
||||
##
|
||||
## More docs
|
||||
result = message
|
||||
|
||||
proc someOtherFunc(startingValue: int): (string, int) =
|
||||
var num = startingValue
|
||||
num += 1
|
||||
if num > 10 * 10 * 10:
|
||||
echo "Encountered an error"
|
||||
raise newException(ValueError, "Value was over 1000")
|
||||
("Fizz", num)
|
||||
|
||||
proc `+=`(a: var SomeStruct, b: SomeStruct): string =
|
||||
a.value.add(b.value)
|
||||
return a.value
|
||||
|
||||
echo someFunc()
|
||||
echo(someOtherFunc(123))
|
||||
discard someFunc()
|
Reference in New Issue
Block a user