CIRCT  19.0.0git
Classes | Namespaces | Typedefs | Functions
Manifest.cpp File Reference
#include "esi/Manifest.h"
#include "esi/Accelerator.h"
#include "esi/Services.h"
#include <nlohmann/json.hpp>
#include <sstream>
Include dependency graph for Manifest.cpp:

Go to the source code of this file.

Classes

class  esi::Manifest::Impl
 

Namespaces

 esi
 

Typedefs

using ServiceTable = std::map< std::string, services::Service * >
 

Functions

static AppID parseID (const nlohmann::json &jsonID)
 
static AppIDPath parseIDPath (const nlohmann::json &jsonIDPath)
 
static ServicePortDesc parseServicePort (const nlohmann::json &jsonPort)
 
static std::any getAny (const nlohmann::json &value)
 Convert the json value to a 'std::any', which can be exposed outside of this file. More...
 
static ModuleInfo parseModuleInfo (const nlohmann::json &mod)
 
std::ostream & operator<< (std::ostream &os, const ModuleInfo &m)
 
bool esi::operator< (const AppID &a, const AppID &b)
 
bool esi::operator< (const AppIDPath &a, const AppIDPath &b)
 
std::ostream & operator<< (std::ostream &os, const AppID &id)
 
std::ostream & operator<< (std::ostream &os, const AppIDPath &path)
 

Typedef Documentation

◆ ServiceTable

using ServiceTable = std::map<std::string, services::Service *>

Definition at line 28 of file Manifest.cpp.

Function Documentation

◆ getAny()

static std::any getAny ( const nlohmann::json &  value)
static

Convert the json value to a 'std::any', which can be exposed outside of this file.

Definition at line 137 of file Manifest.cpp.

Referenced by esi::Manifest::Impl::getService(), parseModuleInfo(), and esi::Manifest::Impl::scanServiceDecls().

◆ operator<<() [1/3]

std::ostream& operator<< ( std::ostream &  os,
const AppID id 
)

Definition at line 625 of file Manifest.cpp.

◆ operator<<() [2/3]

std::ostream& operator<< ( std::ostream &  os,
const AppIDPath path 
)

Definition at line 631 of file Manifest.cpp.

◆ operator<<() [3/3]

std::ostream& operator<< ( std::ostream &  os,
const ModuleInfo m 
)

◆ parseID()

static AppID parseID ( const nlohmann::json &  jsonID)
static

◆ parseIDPath()

static AppIDPath parseIDPath ( const nlohmann::json &  jsonIDPath)
static

Definition at line 123 of file Manifest.cpp.

References parseID().

Referenced by esi::Manifest::Impl::getService().

◆ parseModuleInfo()

static ModuleInfo parseModuleInfo ( const nlohmann::json &  mod)
static

Definition at line 172 of file Manifest.cpp.

References getAny().

Referenced by esi::Manifest::getModuleInfos(), and esi::Manifest::Impl::Impl().

◆ parseServicePort()

static ServicePortDesc parseServicePort ( const nlohmann::json &  jsonPort)
static