mirror of
https://github.com/Reuh/anselme.git
synced 2025-10-27 16:49:31 +00:00
[language] add +_ operator
This commit is contained in:
parent
9b05bc143b
commit
7e29fb87b4
4 changed files with 12 additions and 0 deletions
|
|
@ -34,6 +34,7 @@ local common = {
|
||||||
prefixes = {
|
prefixes = {
|
||||||
{ ">", 4 }, -- just above _=_
|
{ ">", 4 }, -- just above _=_
|
||||||
{ "!", 11 },
|
{ "!", 11 },
|
||||||
|
{ "+", 11 },
|
||||||
{ "-", 11 },
|
{ "-", 11 },
|
||||||
{ "*", 11 },
|
{ "*", 11 },
|
||||||
{ "%", 11 },
|
{ "%", 11 },
|
||||||
|
|
|
||||||
|
|
@ -25,6 +25,7 @@ local primaries = {
|
||||||
r("prefix.function"),
|
r("prefix.function"),
|
||||||
r("prefix.wrap"),
|
r("prefix.wrap"),
|
||||||
r("prefix.negation"),
|
r("prefix.negation"),
|
||||||
|
r("prefix.positive"),
|
||||||
r("prefix.not"),
|
r("prefix.not"),
|
||||||
r("prefix.mutable"),
|
r("prefix.mutable"),
|
||||||
r("prefix.translatable"),
|
r("prefix.translatable"),
|
||||||
|
|
|
||||||
9
anselme/parser/expression/primary/prefix/positive.lua
Normal file
9
anselme/parser/expression/primary/prefix/positive.lua
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
local prefix = require("anselme.parser.expression.primary.prefix.prefix")
|
||||||
|
|
||||||
|
local operator_priority = require("anselme.common").operator_priority
|
||||||
|
|
||||||
|
return prefix {
|
||||||
|
operator = "+",
|
||||||
|
identifier = "+_",
|
||||||
|
priority = operator_priority["+_"]
|
||||||
|
}
|
||||||
|
|
@ -57,6 +57,7 @@ return {
|
||||||
{ "_%_", "(a::is number, b::is number)", function(state, a, b) return Number:new(a.number % b.number) end },
|
{ "_%_", "(a::is number, b::is number)", function(state, a, b) return Number:new(a.number % b.number) end },
|
||||||
{ "_^_", "(a::is number, b::is number)", function(state, a, b) return Number:new(a.number ^ b.number) end },
|
{ "_^_", "(a::is number, b::is number)", function(state, a, b) return Number:new(a.number ^ b.number) end },
|
||||||
{ "-_", "(a::is number)", function(state, a) return Number:new(-a.number) end },
|
{ "-_", "(a::is number)", function(state, a) return Number:new(-a.number) end },
|
||||||
|
{ "+_", "(a::is number)", function(state, a) return a end },
|
||||||
|
|
||||||
{ "rand", "(min::is number, max::is number)", function(state, min, max) return Number:new(math.random(min.number, max.number)) end },
|
{ "rand", "(min::is number, max::is number)", function(state, min, max) return Number:new(math.random(min.number, max.number)) end },
|
||||||
{ "rand", "(max::is number)", function(state, max) return Number:new(math.random(max.number)) end },
|
{ "rand", "(max::is number)", function(state, max) return Number:new(math.random(max.number)) end },
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue