42 std::unique_ptr< SerializationContext >
context;
46 IDeserializer( std::unique_ptr< SerializationContext > serContext );
65 std::string
GetAttribute (
const std::string& name, std::string& defaultValue );
66 const char*
GetAttribute (
const std::string& name,
const char* defaultValue );
71 bool GetAttribute (
const std::string& name,
bool defaultValue );
72 double GetAttribute (
const std::string& name,
double defaultValue );
74 std::string
GetAttribute (
const char* name, std::string& defaultValue );
75 const char*
GetAttribute (
const char* name,
const char* defaultValue );
80 bool GetAttribute (
const char* name,
bool defaultValue );
81 double GetAttribute (
const char* name,
double defaultValue );
91 template<
typename ContextType >
94 assert( context !=
nullptr );
98 assert(
typeid( *context ) ==
typeid( ContextType ) );
101 return static_cast< ContextType*
>( context.get() );
bool EnterObject(const std::string &name)
Wyszukuje obiekt o podanej nazwie i wchodzi w głąb drzewa.
Definition: Deserializer.cpp:131
std::string GetAttribute(const std::string &name, std::string &defaultValue)
Pobiera parę ( nazwa, wartość ) w aktualnym obiekcie.
Definition: Deserializer.cpp:501
Interface for deserializers.
Definition: Deserializer.h:38
ParsingMode
Parsing modes. Serialization.
Definition: Deserializer.h:29
ContextType * GetContext()
Zwraca kontekst serializacji.
Definition: Deserializer.h:92
uint64_t uint64
Definition: TypesDefinitions.h:33
bool NextElement()
Przechodzi do następnego elementu w tablicy lub w obiekcie.
Definition: Deserializer.cpp:245
bool LastElement()
Wchodzi do ostatniego elementu tablicy lub obiektu.
Definition: Deserializer.cpp:361
int64_t int64
Definition: TypesDefinitions.h:32
Plik zawiera definicje podstawowych typów zmiennych.
Przy parsowaniu alokuje nowe stringi.
uint32_t uint32
Definition: TypesDefinitions.h:31
bool LoadFromFile(const std::string &fileName, ParsingMode mode)
Wczytuje i parsuje podany plik.
Definition: Deserializer.cpp:58
DeserializerImpl * impl
Definition: Deserializer.h:41
IDeserializer()
Definition: Deserializer.cpp:30
std::unique_ptr< SerializationContext > context
Definition: Deserializer.h:42
~IDeserializer()
Definition: Deserializer.cpp:43
std::string GetError()
Zwraca string zawierający błąd parsowania, jeżeli był.
Definition: Deserializer.cpp:669
bool EnterArray(const std::string &name)
Wyszukuje tablicę o podanej nazwie i wchodzi w głąb drzewa.
Definition: Deserializer.cpp:160
void Exit()
Wychodzi z tablicy albo obiektu, w którym znaleziono się przy pomocy funkcji EnterObject lub EnterArr...
Definition: Deserializer.cpp:187
bool PrevElement()
Przechodzi do poprzedniego elementu w tablicy lub w obiekcie.
Definition: Deserializer.cpp:298
Definition: Deserializer.cpp:20
Nie alokuje stringów, ale zapisuje sobie wskaźniki na miejsca w parsowanym tekście.
const char * GetName()
Zwraca nazwę węzła, w którym znajduje się serializator.
Definition: Deserializer.cpp:112
bool FirstElement()
Wchodzi do pierwszego elementu tablicy lub obiektu.
Definition: Deserializer.cpp:218
int32_t int32
Definition: TypesDefinitions.h:30
bool LoadFromString(const std::string &contentString)
Parsuje XMLa z podanego stringa.
Definition: Deserializer.cpp:102