Changeset 54939b27 in mainline


Ignore:
Timestamp:
2018-07-05T21:41:18Z (6 years ago)
Author:
Dzejrou <dzejrou@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
ceb2512
Parents:
7db6f50
git-author:
Jaroslav Jindrak <dzejrou@…> (2017-11-04 17:57:49)
git-committer:
Dzejrou <dzejrou@…> (2018-07-05 21:41:18)
Message:

cpp: implemented ios_base manipulators

Location:
uspace/lib/cpp
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/cpp/include/impl/ios.hpp

    r7db6f50 r54939b27  
    547547     */
    548548
     549    /**
     550     * 27.5.6.1, fmtflags manipulators:
     551     */
     552
     553    ios_base& boolalpha(ios_base& str);
     554    ios_base& noboolalpha(ios_base& str);
     555    ios_base& showbase(ios_base& str);
     556    ios_base& noshowbase(ios_base& str);
     557    ios_base& showpoint(ios_base& str);
     558    ios_base& noshowpoint(ios_base& str);
     559    ios_base& showpos(ios_base& str);
     560    ios_base& noshowpos(ios_base& str);
     561    ios_base& skipws(ios_base& str);
     562    ios_base& noskipws(ios_base& str);
     563    ios_base& uppercase(ios_base& str);
     564    ios_base& nouppercase(ios_base& str);
     565    ios_base& unitbuf(ios_base& str);
     566    ios_base& nounitbuf(ios_base& str);
     567
     568    /**
     569     * 27.5.6.2, adjustfield manipulators:
     570     */
     571
     572    ios_base& internal(ios_base& str);
     573    ios_base& left(ios_base& str);
     574    ios_base& right(ios_base& str);
     575
     576    /**
     577     * 27.5.6.3, basefield manupulators:
     578     */
     579
     580    ios_base& dec(ios_base& str);
     581    ios_base& hex(ios_base& str);
     582    ios_base& oct(ios_base& str);
     583
     584    /**
     585     * 27.5.6.4, floatfield manupulators:
     586     */
     587
     588    ios_base& fixed(ios_base& str);
     589    ios_base& scientific(ios_base& str);
     590    ios_base& hexfloat(ios_base& str);
     591    ios_base& defaultfloat(ios_base& str);
     592
     593    /**
     594     * 27.5.6.5, error reporting:
     595     */
     596
    549597    // TODO: implement
    550598}
  • uspace/lib/cpp/src/ios.cpp

    r7db6f50 r54939b27  
    188188        callbacks.emplace_back(fn, index);
    189189    }
     190
     191    ios_base& boolalpha(ios_base& str)
     192    {
     193        str.setf(ios_base::boolalpha);
     194        return str;
     195    }
     196
     197    ios_base& noboolalpha(ios_base& str)
     198    {
     199        str.unsetf(ios_base::boolalpha);
     200        return str;
     201    }
     202
     203    ios_base& showbase(ios_base& str)
     204    {
     205        str.setf(ios_base::showbase);
     206        return str;
     207    }
     208
     209    ios_base& noshowbase(ios_base& str)
     210    {
     211        str.unsetf(ios_base::showbase);
     212        return str;
     213    }
     214
     215    ios_base& showpoint(ios_base& str)
     216    {
     217        str.setf(ios_base::showpoint);
     218        return str;
     219    }
     220
     221    ios_base& noshowpoint(ios_base& str)
     222    {
     223        str.unsetf(ios_base::showpoint);
     224        return str;
     225    }
     226
     227    ios_base& showpos(ios_base& str)
     228    {
     229        str.setf(ios_base::showpos);
     230        return str;
     231    }
     232
     233    ios_base& noshowpos(ios_base& str)
     234    {
     235        str.unsetf(ios_base::showpos);
     236        return str;
     237    }
     238
     239    ios_base& skipws(ios_base& str)
     240    {
     241        str.setf(ios_base::skipws);
     242        return str;
     243    }
     244
     245    ios_base& noskipws(ios_base& str)
     246    {
     247        str.unsetf(ios_base::skipws);
     248        return str;
     249    }
     250
     251    ios_base& uppercase(ios_base& str)
     252    {
     253        str.setf(ios_base::uppercase);
     254        return str;
     255    }
     256
     257    ios_base& nouppercase(ios_base& str)
     258    {
     259        str.unsetf(ios_base::uppercase);
     260        return str;
     261    }
     262
     263    ios_base& unitbuf(ios_base& str)
     264    {
     265        str.setf(ios_base::unitbuf);
     266        return str;
     267    }
     268
     269    ios_base& nounitbuf(ios_base& str)
     270    {
     271        str.unsetf(ios_base::unitbuf);
     272        return str;
     273    }
     274
     275    ios_base& internal(ios_base& str)
     276    {
     277        str.setf(ios_base::internal, ios_base::adjustfield);
     278        return str;
     279    }
     280
     281    ios_base& left(ios_base& str)
     282    {
     283        str.setf(ios_base::left, ios_base::adjustfield);
     284        return str;
     285    }
     286
     287    ios_base& right(ios_base& str)
     288    {
     289        str.setf(ios_base::right, ios_base::adjustfield);
     290        return str;
     291    }
     292
     293    ios_base& dec(ios_base& str)
     294    {
     295        str.setf(ios_base::dec, ios_base::basefield);
     296        return str;
     297    }
     298
     299    ios_base& hex(ios_base& str)
     300    {
     301        str.setf(ios_base::hex, ios_base::basefield);
     302        return str;
     303    }
     304
     305    ios_base& oct(ios_base& str)
     306    {
     307        str.setf(ios_base::oct, ios_base::basefield);
     308        return str;
     309    }
     310
     311    ios_base& fixed(ios_base& str)
     312    {
     313        str.setf(ios_base::fixed, ios_base::floatfield);
     314        return str;
     315    }
     316
     317    ios_base& scientific(ios_base& str)
     318    {
     319        str.setf(ios_base::scientific, ios_base::floatfield);
     320        return str;
     321    }
     322
     323    ios_base& hexfloat(ios_base& str)
     324    {
     325        str.setf(ios_base::fixed | ios_base::scientific, ios_base::floatfield);
     326        return str;
     327    }
     328
     329    ios_base& defaultfloat(ios_base& str)
     330    {
     331        str.unsetf(ios_base::floatfield);
     332        return str;
     333    }
    190334}
Note: See TracChangeset for help on using the changeset viewer.