18#include "cling/Interpreter/Value.h"
19#include "llvm/Support/raw_ostream.h"
25 assert(
sizeof(
fValue) >=
sizeof(cling::Value)
26 &&
"sizeof(fValue) too small!");
27 new (&
fValue) cling::Value();
32 assert(
sizeof(
fValue) >=
sizeof(cling::Value)
33 &&
"sizeof(fValue) too small!");
42 using namespace cling;
51 for (
size_t pos = 0; pos <
output.size(); ++pos) {
54 else if (
output[pos] ==
')') {
57 return std::make_pair(
output.substr(0, pos + 1),
output.substr(pos + 2));
61 return std::make_pair(
"",
output);
65 return ToCV().isValid();
69 return ToCV().getDouble();
73 return ToCV().getLongLong();
77 return ToCV().getULongLong();
81 return ToCV().getPtr();
86 llvm::raw_string_ostream ost(retVal);
Bridge between cling::Value and ROOT.
ULong_t GetAsUnsignedLong() const override
std::pair< std::string, std::string > ToTypeAndValueString() const override
TClingValue & operator=(TClingValue &Other)
struct TClingValue::HasTheSameSizeAsClingValue fValue
Bool_t IsValid() const override
void * GetAsPointer() const override
Long_t GetAsLong() const override
Double_t GetAsDouble() const override
std::string ToString() const override