forked from KindDragon/CPPDebuggerVisualizers
-
Notifications
You must be signed in to change notification settings - Fork 0
/
format_type.py
21 lines (21 loc) · 1.73 KB
/
format_type.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
'''Tools that format C++ type for reading'''
cpp_type = input("Please enter type: ")
if not cpp_type:
cpp_type = "boost::gil::variant<boost::mpl::vector<boost::gil::image<boost::gil::pixel<unsigned char,boost::gil::layout<boost::mpl::vector1<boost::gil::gray_color_t>,boost::mpl::range_c<int,0,1> > >,0,std::allocator<unsigned char> >,boost::gil::image<boost::gil::pixel<unsigned char,boost::gil::layout<boost::mpl::vector3<boost::gil::red_t,boost::gil::green_t,boost::gil::blue_t>,boost::mpl::range_c<int,0,3> > >,0,std::allocator<unsigned char> >,boost::gil::image<boost::gil::pixel<unsigned char,boost::gil::layout<boost::mpl::vector4<boost::gil::red_t,boost::gil::green_t,boost::gil::blue_t,boost::gil::alpha_t>,boost::mpl::range_c<int,0,4> > >,0,std::allocator<unsigned char> >,boost::gil::image<boost::gil::pixel<unsigned short,boost::gil::layout<boost::mpl::vector1<boost::gil::gray_color_t>,boost::mpl::range_c<int,0,1> > >,0,std::allocator<unsigned char> >,boost::gil::image<boost::gil::pixel<unsigned short,boost::gil::layout<boost::mpl::vector3<boost::gil::red_t,boost::gil::green_t,boost::gil::blue_t>,boost::mpl::range_c<int,0,3> > >,0,std::allocator<unsigned char> >,boost::mpl::na,boost::mpl::na,boost::mpl::na,boost::mpl::na,boost::mpl::na,boost::mpl::na,boost::mpl::na,boost::mpl::na,boost::mpl::na,boost::mpl::na,boost::mpl::na,boost::mpl::na,boost::mpl::na,boost::mpl::na,boost::mpl::na> >"
print()
indent = 0
for c in cpp_type:
if c == "<":
print(c)
indent+=1
print(indent*" ", end="")
elif c == ">":
indent-=1
print()
print(indent*" " + c, end="")
elif c == ",":
print(c, end="")
print()
print(indent*" ", end="")
else:
print(c, end="")