clang 10.0.0git

Public Member Functions | List of all members
clang::serialization::DataStreamBasicWriter< Impl > Class Template Reference

DataStreamBasicWriter provides convenience implementations for many BasicWriter methods based on the assumption that the ultimate writer implementation is based on a variable-length stream of unstructured data (like Clang's module files). More...

`#include "clang/AST/AbstractBasicWriter.h"`

Inheritance diagram for clang::serialization::DataStreamBasicWriter< Impl >:
[legend]
Collaboration diagram for clang::serialization::DataStreamBasicWriter< Impl >:
[legend]

## Public Member Functions
Impl & | find (const char *propertyName)
| Implement property-find by ignoring it. More...
Impl & | writeObject ()
template<class T >
void | writeEnum (T value)
template<class T >
void | writeArray (llvm::ArrayRef< T > array)
template<class T >
void | writeOptional (llvm::Optional< T > value)
void | writeAPSInt (const llvm::APSInt &value)
void | writeAPInt (const llvm::APInt &value)
void | writeQualifiers (Qualifiers value)
void | writeExceptionSpecInfo (const FunctionProtoType::ExceptionSpecInfo &esi)
void | writeExtParameterInfo (FunctionProtoType::ExtParameterInfo epi)
void | writeNestedNameSpecifier (NestedNameSpecifier *NNS)

## Detailed Description

### template<class Impl>
class clang::serialization::DataStreamBasicWriter< Impl >

DataStreamBasicWriter provides convenience implementations for many BasicWriter methods based on the assumption that the ultimate writer implementation is based on a variable-length stream of unstructured data (like Clang's module files).

It is designed to pair with DataStreamBasicReader.

This class can also act as a PropertyWriter, implementing find("...") by simply forwarding to itself.

Unimplemented methods: writeBool writeUInt32 writeUInt64 writeIdentifier writeSelector writeSourceLocation writeQualType writeStmtRef writeDeclRef

Definition at line 121 of file AbstractBasicWriter.h.

## Member Function Documentation

## ◆ find()

template<class Impl>

Impl& clang::serialization::DataStreamBasicWriter< Impl >::find | ( | const char * | propertyName | ) |
| inline

Implement property-find by ignoring it.

We rely on properties being serialized and deserialized in a reliable order instead.

Definition at line 128 of file AbstractBasicWriter.h.

## ◆ writeAPInt()

template<class Impl>

void clang::serialization::DataStreamBasicWriter< Impl >::writeAPInt | ( | const llvm::APInt & | value | ) |
| inline

Definition at line 159 of file AbstractBasicWriter.h.

## ◆ writeAPSInt()

template<class Impl>

void clang::serialization::DataStreamBasicWriter< Impl >::writeAPSInt | ( | const llvm::APSInt & | value | ) |
| inline

Definition at line 154 of file AbstractBasicWriter.h.

## ◆ writeArray()

template<class Impl>
template<class T >

void clang::serialization::DataStreamBasicWriter< Impl >::writeArray | ( | llvm::ArrayRef< T > | array | ) |
| inline

Definition at line 142 of file AbstractBasicWriter.h.

## ◆ writeEnum()

template<class Impl>
template<class T >

void clang::serialization::DataStreamBasicWriter< Impl >::writeEnum | ( | T | value | ) |
| inline

Definition at line 137 of file AbstractBasicWriter.h.

## ◆ writeExceptionSpecInfo()

template<class Impl>

void clang::serialization::DataStreamBasicWriter< Impl >::writeExceptionSpecInfo | ( | const FunctionProtoType::ExceptionSpecInfo & | esi | ) |
| inline

Definition at line 172 of file AbstractBasicWriter.h.

## ◆ writeExtParameterInfo()

template<class Impl>

void clang::serialization::DataStreamBasicWriter< Impl >::writeExtParameterInfo | ( | FunctionProtoType::ExtParameterInfo | epi | ) |
| inline

Definition at line 187 of file AbstractBasicWriter.h.

## ◆ writeNestedNameSpecifier()

template<class Impl>

void clang::serialization::DataStreamBasicWriter< Impl >::writeNestedNameSpecifier | ( | NestedNameSpecifier * | NNS | ) |
| inline

Definition at line 193 of file AbstractBasicWriter.h.

## ◆ writeObject()

template<class Impl>

Impl& clang::serialization::DataStreamBasicWriter< Impl >::writeObject | ( |  | ) |
| inline

Definition at line 134 of file AbstractBasicWriter.h.

## ◆ writeOptional()

template<class Impl>
template<class T >

void clang::serialization::DataStreamBasicWriter< Impl >::writeOptional | ( | llvm::Optional< T > | value | ) |
| inline

Definition at line 150 of file AbstractBasicWriter.h.

## ◆ writeQualifiers()

template<class Impl>

void clang::serialization::DataStreamBasicWriter< Impl >::writeQualifiers | ( | Qualifiers | value | ) |
| inline

Definition at line 166 of file AbstractBasicWriter.h.

Referenced by getTypeCodeForTypeClass().

The documentation for this class was generated from the following file:

- include/clang/AST/AbstractBasicWriter.h