This commit is contained in:
BLUELOVETH 2023-09-20 10:51:44 +08:00
parent 8c99ef7356
commit 7aa42e85c4
2 changed files with 21 additions and 6 deletions

View File

@ -683,7 +683,7 @@ void init_builtins(VM* _vm) {
ss << '['; ss << '[';
for(int i=0; i<iterable.size(); i++){ for(int i=0; i<iterable.size(); i++){
ss << CAST(Str&, vm->py_repr(iterable[i])); ss << CAST(Str&, vm->py_repr(iterable[i]));
if(i != iterable.size()) ss << ','; if(i != iterable.size()-1) ss << ", ";
} }
ss << ']'; ss << ']';
return VAR(ss.str()); return VAR(ss.str());
@ -695,7 +695,7 @@ void init_builtins(VM* _vm) {
ss << '['; ss << '[';
for(int i=0; i<iterable.size(); i++){ for(int i=0; i<iterable.size(); i++){
ss << CAST(Str&, vm->py_json(iterable[i])); ss << CAST(Str&, vm->py_json(iterable[i]));
if(i != iterable.size()) ss << ','; if(i != iterable.size()-1) ss << ", ";
} }
ss << ']'; ss << ']';
return VAR(ss.str()); return VAR(ss.str());
@ -710,8 +710,8 @@ void init_builtins(VM* _vm) {
ss << ','; ss << ',';
}else{ }else{
for(int i=0; i<iterable.size(); i++){ for(int i=0; i<iterable.size(); i++){
ss << vm->py_repr(iterable[i]); ss << CAST(Str&, vm->py_repr(iterable[i]));
if(i != iterable.size()) ss << ','; if(i != iterable.size()-1) ss << ", ";
} }
} }
ss << ')'; ss << ')';
@ -724,7 +724,7 @@ void init_builtins(VM* _vm) {
ss << '['; ss << '[';
for(int i=0; i<iterable.size(); i++){ for(int i=0; i<iterable.size(); i++){
ss << CAST(Str&, vm->py_json(iterable[i])); ss << CAST(Str&, vm->py_json(iterable[i]));
if(i != iterable.size()) ss << ','; if(i != iterable.size()-1) ss << ", ";
} }
ss << ']'; ss << ']';
return VAR(ss.str()); return VAR(ss.str());

View File

@ -40,4 +40,19 @@ assert c == _c
d = True d = True
_j = json.dumps(d) _j = json.dumps(d)
_d = json.loads(_j) _d = json.loads(_j)
assert d == _d assert d == _d
assert repr((1,)) == '(1,)'
assert repr((1, 2, 3)) == '(1, 2, 3)'
assert repr(tuple()) == '()'
assert json.dumps((1,)) == '[1]'
assert json.dumps((1, 2, 3)) == '[1, 2, 3]'
assert json.dumps(tuple()) == '[]'
assert repr([]) == '[]'
assert repr([1, 2, 3]) == '[1, 2, 3]'
assert repr([1]) == '[1]'
assert json.dumps([]) == '[]'
assert json.dumps([1, 2, 3]) == '[1, 2, 3]'
assert json.dumps([1]) == '[1]'