52 lines
1.1 KiB
Plaintext
52 lines
1.1 KiB
Plaintext
|
unsigned_int -> [0-9]:+ {%
|
||
|
function(d) {
|
||
|
return parseInt(d[0].join(""));
|
||
|
}
|
||
|
%}
|
||
|
|
||
|
int -> ("-"|"+"):? [0-9]:+ {%
|
||
|
function(d) {
|
||
|
if (d[0]) {
|
||
|
return parseInt(d[0][0]+d[1].join(""));
|
||
|
} else {
|
||
|
return parseInt(d[1].join(""));
|
||
|
}
|
||
|
}
|
||
|
%}
|
||
|
|
||
|
unsigned_decimal -> [0-9]:+ ("." [0-9]:+):? {%
|
||
|
function(d) {
|
||
|
return parseFloat(
|
||
|
d[0].join("") +
|
||
|
(d[1] ? "."+d[1][1].join("") : "")
|
||
|
);
|
||
|
}
|
||
|
%}
|
||
|
|
||
|
decimal -> "-":? [0-9]:+ ("." [0-9]:+):? {%
|
||
|
function(d) {
|
||
|
return parseFloat(
|
||
|
(d[0] || "") +
|
||
|
d[1].join("") +
|
||
|
(d[2] ? "."+d[2][1].join("") : "")
|
||
|
);
|
||
|
}
|
||
|
%}
|
||
|
|
||
|
percentage -> decimal "%" {%
|
||
|
function(d) {
|
||
|
return d[0]/100;
|
||
|
}
|
||
|
%}
|
||
|
|
||
|
jsonfloat -> "-":? [0-9]:+ ("." [0-9]:+):? ([eE] [+-]:? [0-9]:+):? {%
|
||
|
function(d) {
|
||
|
return parseFloat(
|
||
|
(d[0] || "") +
|
||
|
d[1].join("") +
|
||
|
(d[2] ? "."+d[2][1].join("") : "") +
|
||
|
(d[3] ? "e" + (d[3][1] || "+") + d[3][2].join("") : "")
|
||
|
);
|
||
|
}
|
||
|
%}
|