/* * START THE VM */ void startVM(Vm* vm) { vm->PC = 0; while (charArrayToInt(0,2,vm->IR) != 99) { nextInstruction(vm); switch (charArrayToInt(0,2,vm->IR)) { case 0: o0(vm); break; case 1: o1(vm); break; case 2: o2(vm); break; case 3: o3(vm); break; case 4: o4(vm); break; case 5: o5(vm); break; case 6: o6(vm); break; case 7: o7(vm); break; case 8: o8(vm); break; case 9: o9(vm); break; case 10: o10(vm); break; case 11: o11(vm); break; case 12: o12(vm); break; case 13: o13(vm); break; case 14: o14(vm); break; case 15: o15(vm); break; case 16: o16(vm); break; case 17: o17(vm); break; case 18: o18(vm); break; case 19: o19(vm); break; case 20: o20(vm); break; case 21: o21(vm); break; case 22: o22(vm); break; case 23: o23(vm); break; case 24: o24(vm); break; case 25: o25(vm); break; case 26: o26(vm); break; case 27: o27(vm); break; case 28: o28(vm); break; case 29: o29(vm); break; case 30: o30(vm); break; case 31: o31(vm); break; case 32: o32(vm); break; case 33: o33(vm); break; case 34: o34(vm); break; case 35: o35(vm); break; case 99: o99(vm); break; default: // Code break; } displayVmFinal(vm); } }
template<class T> void foo_test(T &bp) { typedef typename std::remove_const<T>::type O; typename O::key_compare c; typename O::allocator_type a; typename O::storage_type v; typename O::key_type k; O o, oo; auto b = bp.cbegin(); auto e = bp.cend(); T o00(c); T o01(a); T o02(c, a); T o03(b, e, c); T o04(b, e, a); T o05(b, e, c, a); T o06(o); T o07(o, a); T o08(std::move(o)); T o09(std::move(o), a); T o10({}, c); T o11({}, a); T o12({}, c, a); o = oo; o = std::move(oo); o = {}; o.swap(oo); o.insert(v); o.insert(std::move(v)); o.insert(o.begin(), v); o.insert(o.begin(), std::move(v)); o.insert(b, e); o.insert({}); o.emplace(v); o.emplace_hint(o.begin(), v); bp.find(k); o.erase(o.cbegin()); o.erase(k); o.erase(b, e); bp.count(k); bp.count(k, k); bp.range(k, k); bp.lower_bound(k); bp.upper_bound(k); bp.equal_range(k); bp.begin(); bp.cbegin(); bp.rbegin(); bp.crbegin(); bp.end(); bp.cend(); bp.rend(); bp.crend(); bp.front(); bp.back(); bp.empty(); o.empty(); o.size(); o.max_size(); o.at(0); o.rank(k); o.lower_rank(k); o.upper_rank(k); O::rank(b); }