10#ifndef __RTAsciiEncoding_h__
11#define __RTAsciiEncoding_h__ included
17#ifndef __RTEncoding_h__
18#include <RTEncoding.h>
25#if OBJECT_DECODE && ! defined( __RTAsciiDecoding_h__ )
26#include <RTAsciiDecoding.h>
51 virtual int flush(
void )
override;
61 virtual int put_address (
const void * )
override;
62 virtual int put_bool (
bool )
override;
63 virtual int put_char (
char )
override;
65 virtual int put_double (
double )
override;
66 virtual int put_float (
float )
override;
67 virtual int put_longdouble(
long double )
override;
69 virtual int put_int (
int )
override;
70 virtual int put_long (
long )
override;
71 virtual int put_long_long(
long long )
override;
72 virtual int put_short (
short )
override;
73 virtual int put_uchar (
unsigned char )
override;
74 virtual int put_unsigned(
unsigned )
override;
75 virtual int put_ulong (
unsigned long )
override;
76 virtual int put_ushort (
unsigned short )
override;
78 virtual int put_unsignedint(
unsigned int)
override;
79 virtual int put_unsignedlong(
unsigned long)
override;
80 virtual int put_unsignedlonglong(
unsigned long long)
override;
81 virtual int put_unsignedshort(
unsigned short)
override;
82 virtual int put_unsignedchar(
unsigned char)
override;
83 virtual int put_string(
const char * )
override;
85 virtual int put_opaque(
int,
const char * )
override;
89 virtual int put_array(
const void *,
int,
const RTObject_class * )
override;
91 virtual int put_indirect(
const void *,
const RTObject_class * )
override;
93 virtual int put_struct(
const void *,
const RTObject_class * )
override;
103 enum Spacing { SpaceNone, SpaceAround };
109 int putName(
const char * );
111 virtual int putFields(
const void *,
const RTObject_class *,
int & first );
112 int putAddress (
const void * );
113 int putFieldListStart(
void );
114 int putFieldSeparator(
void );
115 int putFieldListFinish(
void );
117 int putCode(
const char *,
int, Spacing );
The default encoding implementation that is used for all default type descriptors.
Definition: RTAsciiEncoding.h:34
virtual int flush(void) override
Flush the output buffer.
RTAsciiEncoding(RTOBuffer *buffer)
Construct an ASCII encoder object.
virtual int write_string(const char *str) override
Write a string verbatimely to the output buffer of the encoder.
virtual int put(const void *data, const RTObject_class *type) override
Encode a data object and write the encoding to the output buffer.
Definition: RTEncoding.h:27
Represents an output buffer.
Definition: RTOBuffer.h:23
Definition: RTFieldDescriptor.h:40
A type descriptor providing information about a type.
Definition: RTObject_class.h:64