acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
print_formatting.h
1// Created by camilo on 2023-06-10 19:42 <3ThomasBorregaardSorensen!!
2#pragma once
3
4
5class CLASS_DECL_ACME print_formatting
6{
7public:
8
9
10 ::file::fmtflags m_fmtflags;
11 ::i8 m_width;
12 ::i8 m_precision;
13
14
15 print_formatting();
16
17
18 void set_format_flags(::file::fmtflags efmtflags);
19
20
21 filesize precision() const { return m_precision; }
22
23 filesize precision(::i8 prec) { return m_precision = prec; }
24
25 filesize width() const { return m_width; }
26
27 filesize width(::i8 wide) { return m_width = wide; }
28
29
30 ::file::fmtflags setf(::file::fmtflags flagsAdd)
31 {
32
33 return m_fmtflags = (::file::fmtflags)((((::i32)m_fmtflags)) | ((::i32)flagsAdd));
34
35 }
36
37
38 ::file::fmtflags setf(::file::fmtflags flagsAdd, ::file::fmtflags flagsRemove)
39 {
40
41 setf(flagsAdd);
42
43 return m_fmtflags = (::file::fmtflags)((((::i32)m_fmtflags)) & (~(::i32)flagsAdd));
44
45 }
46
47
48
49};
50
51