/*************************************************************************** * * _bitmask.h - helper definitions for bitmask types * * This is an internal header file used to implement the C++ Standard * Library. It should never be #included directly by a program. * * $Id: _iosfwd.h 638379 2008-03-18 14:13:51Z faridz $ * *************************************************************************** * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed * with this work for additional information regarding copyright * ownership. The ASF licenses this file to you under the Apache * License, Version 2.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or * implied. See the License for the specific language governing * permissions and limitations under the License. * * Copyright 1994-2006 Rogue Wave Software. * **************************************************************************/ #ifndef _RWSTD_RW_IOSFWD_H_INCLUDED #define _RWSTD_RW_IOSFWD_H_INCLUDED #ifndef _RWSTD_RW_BITMASK_H_INCLUDED # include #endif // _RWSTD_RW_BITMASK_H_INCLUDED _RWSTD_NAMESPACE (std) { template struct char_traits; _RWSTD_SPECIALIZED_CLASS struct char_traits; #ifndef _RWSTD_NO_WCHAR_T _RWSTD_SPECIALIZED_CLASS struct char_traits; #endif // _RWSTD_NO_WCHAR_T struct _RWSTD_EXPORT ios_base; _EXPORT template class basic_ios; _EXPORT template class basic_streambuf; // 27.2, p4 _EXPORT template class basic_istream; // 27.2, p5 _EXPORT template class basic_ostream; // 27.2, p6 _EXPORT template class basic_iostream; template struct ostreambuf_iterator; template struct istreambuf_iterator; } // namespace std // used in money_get and num_get facets #define _RWSTD_IOSTATE _RWSTD_BITMASK_ENUM (_RW::__rw_iostate) #define _RWSTD_FMTFLAGS _RWSTD_BITMASK_ENUM (_RW::__rw_fmtflags) _RWSTD_NAMESPACE (__rw) { // for convenience typedef _STD::istreambuf_iterator > __rw_istreambuf_iterator; #ifndef _RWSTD_NO_WCHAR_T typedef _STD::istreambuf_iterator > __rw_wistreambuf_iterator; #endif // _RWSTD_NO_WCHAR_T enum __rw_fmtflags { __rw_boolalpha = _RWSTD_IOS_BOOLALPHA, __rw_dec = _RWSTD_IOS_DEC, __rw_fixed = _RWSTD_IOS_FIXED, __rw_hex = _RWSTD_IOS_HEX, __rw_internal = _RWSTD_IOS_INTERNAL, __rw_left = _RWSTD_IOS_LEFT, __rw_oct = _RWSTD_IOS_OCT, __rw_right = _RWSTD_IOS_RIGHT, __rw_scientific = _RWSTD_IOS_SCIENTIFIC, __rw_showbase = _RWSTD_IOS_SHOWBASE, __rw_showpoint = _RWSTD_IOS_SHOWPOINT, __rw_showpos = _RWSTD_IOS_SHOWPOS, __rw_skipws = _RWSTD_IOS_SKIPWS, __rw_unitbuf = _RWSTD_IOS_UNITBUF, __rw_uppercase = _RWSTD_IOS_UPPERCASE, __rw_bin = _RWSTD_IOS_BIN, __rw_basefield = _RWSTD_IOS_BASEFIELD, __rw_adjustfield = _RWSTD_IOS_ADJUSTFIELD, __rw_floatfield = _RWSTD_IOS_FLOATFIELD, __rw_nolock = _RWSTD_IOS_NOLOCK, __rw_nolockbuf = _RWSTD_IOS_NOLOCKBUF, __rw_sync_stdio = _RWSTD_IOS_SYNC_STDIO }; _RWSTD_DEFINE_BITMASK_OPERATORS (__rw_fmtflags); enum __rw_iostate { __rw_goodbit = _RWSTD_IOS_GOODBIT, __rw_badbit = _RWSTD_IOS_BADBIT, __rw_eofbit = _RWSTD_IOS_EOFBIT, __rw_failbit = _RWSTD_IOS_FAILBIT, // for debugging __rw_bad_eof = _RWSTD_IOS_BADBIT | _RWSTD_IOS_EOFBIT, __rw_bad_fail = _RWSTD_IOS_BADBIT | _RWSTD_IOS_FAILBIT, __rw_bad_eof_fail = _RWSTD_IOS_BADBIT | _RWSTD_IOS_EOFBIT | _RWSTD_IOS_FAILBIT, __rw_eof_fail = _RWSTD_IOS_EOFBIT | _RWSTD_IOS_FAILBIT, __rw_nothrow = _RWSTD_IOS_NOTHROW, __rw_rethrow = _RWSTD_IOS_RETHROW }; _RWSTD_DEFINE_BITMASK_OPERATORS (__rw_iostate); enum __rw_openmode { __rw_app = _RWSTD_IOS_APP, __rw_binary = _RWSTD_IOS_BINARY, __rw_in = _RWSTD_IOS_IN, __rw_out = _RWSTD_IOS_OUT, __rw_in_out = _RWSTD_IOS_IN | _RWSTD_IOS_OUT, __rw_trunc = _RWSTD_IOS_TRUNC, __rw_ate = _RWSTD_IOS_ATE, __rw_nocreate = _RWSTD_IOS_NOCREATE, __rw_noreplace = _RWSTD_IOS_NOREPLACE, __rw_stdio = _RWSTD_IOS_STDIO, __rw_native = _RWSTD_IOS_NATIVE }; _RWSTD_DEFINE_BITMASK_OPERATORS (__rw_openmode); enum __rw_seekdir { __rw_beg = _RWSTD_SEEK_SET, __rw_cur = _RWSTD_SEEK_CUR, __rw_end = _RWSTD_SEEK_END }; } // namespace __rw #endif // _RWSTD_RW_IOSFWD_H_INCLUDED