YSTest: ystdex::block_buffer类 参考

YSTest PreAlpha_b700_20160611 The YSLib Test Project

- 首页
- 相关页面
- 模块
- 命名空间
- 类
- 文件

- 类列表
- 类索引
- 类继承关系
- 类成员

Public 成员函数 | Private 属性 | 友元 | 所有成员列表
ystdex::block_buffer类 参考

块缓冲。 更多...

`#include <cstdio.h>`

## Public 成员函数

| block_buffer (size_t n)
| block_buffer (std::unique_ptr< byte[]> p)
| block_buffer (block_buffer &&)=default
block_buffer & | operator= (block_buffer &&)=default
void | clear ()
bool | empty ()
void | fill (size_t offset, size_t n=1, byte value={})
| 填充字节到缓冲区。 更多...
void | flush ()
byte * | get () const
bool | modified () const
void | read (void *dst, size_t offset, size_t n) const
| 读取缓冲区内容到外部存储。 更多...
void | set (std::unique_ptr< byte[]> p)
void | write (size_t offset, const void *src, size_t n)
| 写入外部字节序列的内容到缓冲区。 更多...

## Private 属性

bool | need_flush = {}
std::unique_ptr< byte[]> | content

## 友元

void | swap (block_buffer &x, block_buffer &y)

## 详细描述

块缓冲。

警告
  非虚析构。

自从
  build 604

在文件 ystdex/cstdio.h 第 262 行定义.

## 构造及析构函数说明

ystdex::block_buffer::block_buffer | ( | size_t | n | ) |

inline

在文件 ystdex/cstdio.h 第 269 行定义.

ystdex::block_buffer::block_buffer | ( | std::unique_ptr< byte[]> | p | ) |

inline

在文件 ystdex/cstdio.h 第 272 行定义.

ystdex::block_buffer::block_buffer | ( | block_buffer && |  | ) |

default

## 成员函数说明

void ystdex::block_buffer::clear | ( |  | ) |

inline

在文件 ystdex/cstdio.h 第 281 行定义.

bool ystdex::block_buffer::empty | ( |  | ) |

inline

在文件 ystdex/cstdio.h 第 288 行定义.

void ystdex::block_buffer::fill | ( | size_t | offset,
|  | size_t | n = `1`,
|  | byte | value = `{}`
| ) |  |

填充字节到缓冲区。

参数

  offset | 起始偏移字节数。
  n | 填充的字节数。
  value | 填充的字节值。

前置条件
  断言：指针参数和 `get()` 结果非空。

自从
  build 606

在文件 cstdio.cpp 第 176 行定义.

参考 platform::n, ystdex::trivially_fill_n(), yconstraint , 以及 yunseq.

函数调用图:

void ystdex::block_buffer::flush | ( |  | ) |

inline

在文件 ystdex/cstdio.h 第 305 行定义.

byte* ystdex::block_buffer::get | ( |  | ) | const

inline

在文件 ystdex/cstdio.h 第 311 行定义.

bool ystdex::block_buffer::modified | ( |  | ) | const

inline

在文件 ystdex/cstdio.h 第 317 行定义.

block_buffer& ystdex::block_buffer::operator= | ( | block_buffer && |  | ) |

default

void ystdex::block_buffer::read | ( | void * | dst,
|  | size_t | offset,
|  | size_t | n
| ) |  | const

读取缓冲区内容到外部存储。

参数

  dst | 外部存储的字节序列。
  offset | 起始偏移字节数。
  n | 复制的字节数。

前置条件
  dst 指向的存储至少 n 个字节可写。
  断言：指针参数和 `get()` 结果非空。

在文件 cstdio.cpp 第 185 行定义.

参考 NPL::dst, platform::n, ystdex::trivially_copy_n(), yconstraint , 以及 yunseq.

函数调用图:

void ystdex::block_buffer::set | ( | std::unique_ptr< byte[]> | p | ) |

inline

在文件 ystdex/cstdio.h 第 334 行定义.

参考 platform::p.

void ystdex::block_buffer::write | ( | size_t | offset,
|  | const void * | src,
|  | size_t | n
| ) |  |

写入外部字节序列的内容到缓冲区。

参数

  offset | 起始偏移字节数。
  src | 外部存储的字节序列。
  n | 复制的字节数。

前置条件
  src 指向的存储至少 n 个字节可读。
  断言：指针参数和 `get()` 结果非空。

在文件 cstdio.cpp 第 193 行定义.

参考 platform::n, ystdex::trivially_copy_n(), yconstraint , 以及 yunseq.

函数调用图:

## 友元及相关函数文档

void swap | ( | block_buffer & | x,
|  | block_buffer & | y
| ) |  |

friend

在文件 ystdex/cstdio.h 第 340 行定义.

## 类成员变量说明

std::unique_ptr<byte[]> ystdex::block_buffer::content

private

在文件 ystdex/cstdio.h 第 266 行定义.

bool ystdex::block_buffer::need_flush = {}

private

在文件 ystdex/cstdio.h 第 265 行定义.

该类的文档由以下文件生成:

- ystdex/cstdio.h
- cstdio.cpp