39 std::vector<std::shared_ptr<csl::Space>> getOwnSpaces()
const {
47 void readJSON(std::string
const &fileName);
49 std::vector<csl::Expr> readSequence(
50 std::vector<csl::Expr>::const_iterator first,
51 std::vector<csl::Expr>::const_iterator last
54 std::vector<csl::Expr> res(last - first);
55 auto res_iter = res.begin();
56 while (first != last) {
57 *res_iter = read(*first,
false);
64 template<
class ExprType,
class Translator>
70 return read(translator(expr),
false);
73 template<
class Iterator,
class Translator>
74 std::vector<csl::Expr> readSequence(
80 std::vector<csl::Expr> res(last - first);
81 auto res_iter = res.begin();
82 while (first != last) {
83 *res_iter = read(*first, translator);
90 void print(std::ostream &out = std::cout)
const;
91 void printCode(std::ostream &out = std::cout)
const;
93 void printJSON(std::string
const &fileName)
const;
100 std::string_view indent
103 void printCSLDefinition(
109 void parseAbbreviations(
csl::Expr const &expr);
110 void parseTensors(
csl::Expr const &expr);
111 void parseLiterals(
csl::Expr const &expr);
114 std::unique_ptr<JSON::Node> getSpaceList(
115 std::vector<csl::Space const*>
const &spaces
119 std::string
const &name,
123 std::string
const &name,
124 std::vector<csl::Space const*>
const &spaces,
125 bool isComplex =
false 128 std::string
const &name,
129 bool isComplex =
false 138 std::vector<csl::Expr> expressions;
140 std::vector<csl::Space const*> spaces;
141 std::vector<csl::Parent> abbreviations;
142 std::vector<csl::Tensor> tensors;
143 std::vector<csl::Expr> literal;
145 std::map<csl::Space const*, size_t> nIndices;
146 std::vector<std::shared_ptr<csl::Space>> ownSpaces;
Inherits from JSON::Object, specialized in JSON Node. A Node owns a vector of Object. The Node's children can either be Leaf or other Node objects. This allows to store the tree structure of a .json file.
Definition: jsonObject.h:97
Definition: checkpoint.h:38
Definition: csldatahandler.h:35
Contains all objects related to JSON reading / writing.
Definition: csldatahandler.h:30