Parse double + fix Boolean parse
This commit is contained in:
parent
700aa28779
commit
7be045fdb4
1 changed files with 7 additions and 3 deletions
|
@ -45,7 +45,11 @@ public class JsonParser extends Parser<Json>{
|
|||
content.then(new RedirectStateTree<>(base, (global, local) -> global.set(local.get()))).end();
|
||||
content.then((validator) -> validator.validate((token) -> token.getType().equals(TokenType.STRING), (bag, token) -> bag.set(token))).end();
|
||||
content.then((validator) -> validator.validate((token) -> token.getType().equals(TokenType.CHAR), (bag, token) -> bag.set(token))).end();
|
||||
content.then((validator) -> validator.validate((token) -> token.getType().equals(TokenType.NAME), (bag, token) -> bag.set(token))).end();
|
||||
StateTree<Json> number = content.then((validator) -> validator.validate((token) -> token.getType().equals(TokenType.NAME), (bag, token) -> bag.set(token)));
|
||||
number.end();
|
||||
number.then((validator) -> validator.validate((token) -> token.getValue().equals("."), (bag, token) -> bag.set(bag.<Token>get().concat(token))))
|
||||
.then((validator) -> validator.validate((token) -> token.getType().equals(TokenType.NAME), (bag, token) -> bag.set(bag.<Token>get().concat(token))))
|
||||
.end();
|
||||
|
||||
StateTree<Json> mapper = new StateTree<>();
|
||||
StateTree<Json> mapper_key = mapper.then((validator) -> validator.validate((token) -> token.getType().equals(TokenType.STRING), (bag, token) -> {
|
||||
|
@ -110,10 +114,10 @@ public class JsonParser extends Parser<Json>{
|
|||
return Long.parseLong(content);
|
||||
}catch(Exception _){
|
||||
try {
|
||||
return Boolean.parseBoolean(content);
|
||||
return Double.parseDouble(content);
|
||||
}catch(Exception __){
|
||||
try{
|
||||
return Double.parseDouble(content);
|
||||
return Boolean.parseBoolean(content);
|
||||
}catch(Exception ___){}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue