You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
94 lines
1.7 KiB
94 lines
1.7 KiB
%include <std_ios.i> |
|
%{ |
|
#ifndef SWIG_STD_NOMODERN_STL |
|
#include <streambuf> |
|
#else |
|
#include <streambuf.h> |
|
#endif |
|
%} |
|
|
|
namespace std { |
|
|
|
template<typename _CharT, typename _Traits = char_traits<_CharT> > |
|
class basic_streambuf |
|
{ |
|
public: |
|
// Types: |
|
typedef _CharT char_type; |
|
typedef _Traits traits_type; |
|
typedef typename traits_type::int_type int_type; |
|
typedef typename traits_type::pos_type pos_type; |
|
typedef typename traits_type::off_type off_type; |
|
|
|
public: |
|
virtual |
|
~basic_streambuf(); |
|
|
|
// Locales: |
|
locale |
|
pubimbue(const locale &__loc); |
|
|
|
locale |
|
getloc() const; |
|
|
|
// Buffer and positioning: |
|
basic_streambuf<_CharT, _Traits>* |
|
pubsetbuf(char_type* __s, streamsize __n); |
|
|
|
pos_type |
|
pubseekoff(off_type __off, ios_base::seekdir __way, |
|
ios_base::openmode __mode = std::ios_base::in | std::ios_base::out); |
|
|
|
pos_type |
|
pubseekpos(pos_type __sp, |
|
ios_base::openmode __mode = std::ios_base::in | std::ios_base::out); |
|
|
|
int |
|
pubsync() ; |
|
|
|
// Get and put areas: |
|
// Get area: |
|
streamsize |
|
in_avail(); |
|
|
|
int_type |
|
snextc(); |
|
|
|
int_type |
|
sbumpc(); |
|
|
|
int_type |
|
sgetc(); |
|
|
|
streamsize |
|
sgetn(char_type* __s, streamsize __n); |
|
|
|
// Putback: |
|
int_type |
|
sputbackc(char_type __c); |
|
|
|
int_type |
|
sungetc(); |
|
|
|
// Put area: |
|
int_type |
|
sputc(char_type __c); |
|
|
|
streamsize |
|
sputn(const char_type* __s, streamsize __n); |
|
|
|
protected: |
|
basic_streambuf(); |
|
|
|
private: |
|
basic_streambuf(const basic_streambuf&); |
|
|
|
}; |
|
} |
|
|
|
namespace std { |
|
%template(streambuf) basic_streambuf<char>; |
|
#if defined(SWIG_WCHAR) |
|
%template(wstreambuf) basic_streambuf<wchar_t>; |
|
#endif |
|
}
|
|
|