19 #ifndef SBUILD_PERSONALITY_H
20 #define SBUILD_PERSONALITY_H
22 #include <sbuild/custom-error.h>
44 typedef unsigned long type;
78 const std::string&
get_name ()
const;
119 template <
class charT,
class traits>
121 std::basic_istream<charT,traits>&
125 std::string personality_name;
127 if (std::getline(stream, personality_name))
142 template <
class charT,
class traits>
144 std::basic_ostream<charT,traits>&
145 operator << (std::basic_ostream<charT,traits>& stream,
170 static std::string
const&
Could not set personality.
Definition: personality.h:50
Personality is unknown.
Definition: personality.h:49
Debian source builder components.
Definition: ctty.cc:31
const std::string & get_name() const
Get the name of the personality.
Definition: personality.cc:127
void set_name(const std::string &persona)
Set the name of the personality.
Definition: personality.cc:133
Chroot personality.
Definition: personality.h:40
void set() const
Set the process personality.
Definition: personality.cc:157
custom_error< error_code > error
Exception type.
Definition: personality.h:54
static type find_personality(const std::string &persona)
Find a personality by name.
Definition: personality.cc:101
friend std::basic_istream< charT, traits > & operator>>(std::basic_istream< charT, traits > &stream, personality &rhs)
Get the personality name from a stream.
Definition: personality.h:122
error_code
Error codes.
Definition: personality.h:47
static std::map< std::string, type > personalities
Mapping between personality name and type.
Definition: personality.h:180
personality()
The constructor.
Definition: personality.cc:82
Custom error.
Definition: custom-error.h:31
static std::string get_personalities()
Print a list of the available personalities.
Definition: personality.cc:168
unsigned long type
Personality type.
Definition: personality.h:44
type persona
The personality type.
Definition: personality.h:177
~personality()
Definition: personality.cc:96
std::string persona_name
The name of the current personality.
Definition: personality.h:174