KCL language preview
1. A schema with validation
a schema definition and a check block
horizon-dark
# a schema with a check block
schema Person:
name: str
age: int
check:
age >= 0, "age must be non-negative"
people = [Person {name = "Alice", age = 30}]
atom-one-dark
# a schema with a check block
schema Person:
name: str
age: int
check:
age >= 0, "age must be non-negative"
people = [Person {name = "Alice", age = 30}]
github-dark
# a schema with a check block
schema Person:
name: str
age: int
check:
age >= 0, "age must be non-negative"
people = [Person {name = "Alice", age = 30}]
dracula
# a schema with a check block
schema Person:
name: str
age: int
check:
age >= 0, "age must be non-negative"
people = [Person {name = "Alice", age = 30}]
nord
# a schema with a check block
schema Person:
name: str
age: int
check:
age >= 0, "age must be non-negative"
people = [Person {name = "Alice", age = 30}]
github
# a schema with a check block
schema Person:
name: str
age: int
check:
age >= 0, "age must be non-negative"
people = [Person {name = "Alice", age = 30}]
2. Decorators
the @deprecated and @info decorators
horizon-dark
@deprecated(version = "1.0", reason = "use Widget instead")
schema OldWidget:
name: str atom-one-dark
@deprecated(version = "1.0", reason = "use Widget instead")
schema OldWidget:
name: str github-dark
@deprecated(version = "1.0", reason = "use Widget instead")
schema OldWidget:
name: str dracula
@deprecated(version = "1.0", reason = "use Widget instead")
schema OldWidget:
name: str nord
@deprecated(version = "1.0", reason = "use Widget instead")
schema OldWidget:
name: str github
@deprecated(version = "1.0", reason = "use Widget instead")
schema OldWidget:
name: str 3. String interpolation
interpolating a variable into a string
horizon-dark
name = "world"
greeting = "Hello, ${name}!" atom-one-dark
name = "world"
greeting = "Hello, ${name}!" github-dark
name = "world"
greeting = "Hello, ${name}!" dracula
name = "world"
greeting = "Hello, ${name}!" nord
name = "world"
greeting = "Hello, ${name}!" github
name = "world"
greeting = "Hello, ${name}!"