CASM  1.1.0
A Clusters Approach to Statistical Mechanics
json_io.hh File Reference
#include <set>
#include <unordered_set>
#include "casm/casm_io/json/jsonParser.hh"
#include "casm/container/Array.hh"
#include "casm/global/definitions.hh"
#include "casm/global/eigen.hh"

Go to the source code of this file.

Namespaces

 CASM
 Main CASM namespace.
 

Functions

template<typename T , typename... Args>
jsonParser & CASM::to_json (const Array< T > &value, jsonParser &json, Args &&... args)
 
template<typename T , typename... Args>
void CASM::from_json (Array< T > &value, const jsonParser &json, Args &&... args)
 This requires that 'T::T()' exists, if not, you must do this by hand. More...
 
template<typename K , typename V >
jsonParser & CASM::to_json (const std::map< K, V > &map, jsonParser &json)
 Converts to a JSON object. More...
 
template<typename K , typename V >
void CASM::from_json (std::map< K, V > &map, const jsonParser &json)
 
template<typename T , typename... Args>
jsonParser & CASM::to_json (const std::map< std::string, T > &map, jsonParser &json, Args &&... args)
 Converts to a JSON object. More...
 
template<typename T , typename... Args>
void CASM::from_json (std::map< std::string, T > &map, const jsonParser &json, Args &&... args)
 
template<typename T , typename... Args>
jsonParser & CASM::to_json (const std::vector< T > &vec, jsonParser &json, Args &&... args)
 Converts to a JSON array. More...
 
template<typename T , typename... Args>
void CASM::from_json (std::vector< T > &vec, const jsonParser &json, Args &&... args)
 
template<typename T >
void CASM::from_json (std::vector< T > &vec, const jsonParser &json, const T &initial)
 
template<typename T , std::size_t N>
jsonParser & CASM::to_json (const std::array< T, N > &arr, jsonParser &json)
 Converts to a JSON array. More...
 
template<typename T , std::size_t N>
void CASM::from_json (std::array< T, N > &arr, const jsonParser &json)
 
template<typename T , typename Compare >
jsonParser & CASM::to_json (const std::set< T, Compare > &set, jsonParser &json)
 Converts to a JSON array. More...
 
template<typename T , typename Compare , typename... Args>
void CASM::from_json (std::set< T, Compare > &set, const jsonParser &json, Args &&... args)
 
template<typename T , typename Compare >
jsonParser & CASM::to_json (const std::unordered_set< T, Compare > &set, jsonParser &json)
 Converts to a JSON array. More...
 
template<typename T , typename Compare , typename... Args>
void CASM::from_json (std::unordered_set< T, Compare > &set, const jsonParser &json, Args &&... args)
 
template<typename Derived >
CASM::jsonParserCASM::to_json (const Eigen::MatrixBase< Derived > &value, CASM::jsonParser &json)
 Write Eigen Matrix/Vector to JSON. More...
 
template<typename Derived >
CASM::jsonParserCASM::to_json (const Eigen::MatrixBase< Derived > &value, CASM::jsonParser &json, CASM::jsonParser::as_array)
 Write Eigen Matrix/Vector to JSON. More...
 
template<typename Derived >
CASM::jsonParserCASM::to_json (const Eigen::MatrixBase< Derived > &value, CASM::jsonParser &json, CASM::jsonParser::as_flattest)
 Write Eigen Matrix/Vector to JSON. More...
 
template<typename Derived >
CASM::jsonParserCASM::to_json_array (const Eigen::MatrixBase< Derived > &value, CASM::jsonParser &json)
 Write Eigen Matrix with 1 row or 1 column to JSON array. More...
 
template<typename Derived >
CASM::jsonParser CASM::to_json_array (const Eigen::MatrixBase< Derived > &value)
 Write Eigen Matrix with 1 row or 1 column to JSON array. More...
 
template<typename Derived >
void CASM::from_json (Eigen::MatrixBase< Derived > &value, const CASM::jsonParser &json)
 Read Eigen Matrix/Vector from JSON. More...