git.delta.rocks / jrsonnet / refs/commits / d84b1e98b6e6

difftreelog

fix make str+any/any+str to work as in vanilla

Лач2020-06-14parent: #03aecb4.patch.diff
in: master

1 file changed

modifiedcrates/jsonnet-evaluator/src/evaluate.rsdiffbeforeafterboth
81 Ok(match (a, b) {81 Ok(match (a, b) {
82 (Val::Str(v1), Val::Str(v2)) => Val::Str(v1.to_owned() + &v2),82 (Val::Str(v1), Val::Str(v2)) => Val::Str(v1.to_owned() + &v2),
8383
84 (Val::Str(v1), Val::Num(v2)) => Val::Str(format!("{}{}", v1, v2)),84 (Val::Str(s), o) => Val::Str(format!("{}{}", s, o.clone().into_json(0)?)),
85 (Val::Num(v1), Val::Str(v2)) => Val::Str(format!("{}{}", v1, v2)),85 (o, Val::Str(s)) => Val::Str(format!("{}{}", o.clone().into_json(0)?, s)),
86 (Val::Str(v1), Val::Bool(v2)) => Val::Str(format!("{}{}", v1, v2)),
87 (Val::Bool(v1), Val::Str(v2)) => Val::Str(format!("{}{}", v1, v2)),
88 (Val::Str(v1), Val::Null) => Val::Str(format!("{}null", v1)),
89 (Val::Null, Val::Str(v2)) => Val::Str(format!("null{}", v2)),
9086
91 (Val::Obj(v1), Val::Obj(v2)) => Val::Obj(v2.with_super(v1.clone())),87 (Val::Obj(v1), Val::Obj(v2)) => Val::Obj(v2.with_super(v1.clone())),
92 (Val::Arr(a), Val::Arr(b)) => Val::Arr([&a[..], &b[..]].concat()),88 (Val::Arr(a), Val::Arr(b)) => Val::Arr([&a[..], &b[..]].concat()),