MLCompilerBridge
Tools for streamlining communication with ML models for compiler optimizations.
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
MLBridge::JsonSerDes Class Reference

JsonSerDes - Json Serialization/Deserialization using LLVM's json library. More...

#include <jsonSerDes.h>

Inheritance diagram for MLBridge::JsonSerDes:
Inheritance graph
[legend]
Collaboration diagram for MLBridge::JsonSerDes:
Collaboration graph
[legend]

Public Member Functions

 JsonSerDes ()
 
void * getSerializedData () override
 
void cleanDataStructures () override
 
- Public Member Functions inherited from MLBridge::BaseSerDes
SerDesKind getKind () const
 
virtual void setFeature (const std::string &name, const google::protobuf::Message *value)
 
virtual void setFeature (const std::string &name, const std::vector< google::protobuf::Message * > &value)
 
virtual void setRequest (void *Request)
 
virtual void setResponse (void *Response)
 
size_t getMessageLength ()
 
virtual void * getRequest ()
 
virtual void * getResponse ()
 

Static Public Member Functions

static bool classof (const BaseSerDes *S)
 

Private Member Functions

void * deserializeUntyped (void *data) override
 
void * desJson (llvm::json::Value *V)
 

Private Attributes

llvm::json::Object J
 

Additional Inherited Members

- Protected Member Functions inherited from MLBridge::BaseSerDes
 BaseSerDes (SerDesKind Type)
 
- Protected Attributes inherited from MLBridge::BaseSerDes
const SerDesKind Type
 
void * RequestVoid
 
void * ResponseVoid
 
size_t MessageLength
 

Detailed Description

JsonSerDes - Json Serialization/Deserialization using LLVM's json library.

Definition at line 24 of file jsonSerDes.h.

Constructor & Destructor Documentation

◆ JsonSerDes()

MLBridge::JsonSerDes::JsonSerDes ( )
inline

Definition at line 26 of file jsonSerDes.h.

Member Function Documentation

◆ classof()

static bool MLBridge::JsonSerDes::classof ( const BaseSerDes * S)
inlinestatic

Definition at line 28 of file jsonSerDes.h.

◆ cleanDataStructures()

void MLBridge::JsonSerDes::cleanDataStructures ( )
inlineoverridevirtual

Implements MLBridge::BaseSerDes.

Definition at line 45 of file jsonSerDes.h.

◆ deserializeUntyped()

void * MLBridge::JsonSerDes::deserializeUntyped ( void * data)
overrideprivatevirtual

Implements MLBridge::BaseSerDes.

Definition at line 39 of file jsonSerDes.cpp.

◆ desJson()

void * MLBridge::JsonSerDes::desJson ( llvm::json::Value * V)
private

Definition at line 58 of file jsonSerDes.cpp.

◆ getSerializedData()

void * MLBridge::JsonSerDes::getSerializedData ( )
overridevirtual

Implements MLBridge::BaseSerDes.

Definition at line 29 of file jsonSerDes.cpp.

Member Data Documentation

◆ J

llvm::json::Object MLBridge::JsonSerDes::J
private

Definition at line 52 of file jsonSerDes.h.


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