Nix  2.93.0-dev
Lix: A modern, delicious implementation of the Nix package manager; unstable internal interfaces
Loading...
Searching...
No Matches
nix::FdSource Struct Reference

#include <serialise.hh>

Inheritance diagram for nix::FdSource:
[legend]
Collaboration diagram for nix::FdSource:
[legend]

Public Member Functions

std::string endOfFileError () const
 
 FdSource (int fd)
 
 FdSource (FdSource &&)=default
 
FdSourceoperator= (FdSource &&s)
 
bool good () override
 
- Public Member Functions inherited from nix::BufferedSource
 BufferedSource (size_t bufSize=32 *1024)
 
size_t read (char *data, size_t len) override
 
bool hasData ()
 
- Public Member Functions inherited from nix::Source
void operator() (char *data, size_t len)
 
void drainInto (Sink &sink)
 
std::string drain ()
 

Public Attributes

int fd
 
size_t read = 0
 
std::optional< std::string > specialEndOfFileError
 
- Public Attributes inherited from nix::BufferedSource
size_t bufSize
 
size_t bufPosIn
 
size_t bufPosOut
 
std::unique_ptr< char[]> buffer
 

Protected Member Functions

size_t readUnbuffered (char *data, size_t len) override
 

Detailed Description

A source that reads data from a file descriptor.

Member Function Documentation

◆ good()

bool nix::FdSource::good ( )
overridevirtual

Reimplemented from nix::Source.

◆ readUnbuffered()

size_t nix::FdSource::readUnbuffered ( char * data,
size_t len )
overrideprotectedvirtual

Underlying read call, to be overridden.

Implements nix::BufferedSource.

Member Data Documentation

◆ specialEndOfFileError

std::optional<std::string> nix::FdSource::specialEndOfFileError

Defaults to "unexpected end-of-file"


The documentation for this struct was generated from the following files: