30 lines
854 B
C++
30 lines
854 B
C++
/* -----------------------------------------------------------------------------
|
|
GSFramework
|
|
Copyright 2001-2013 Emmanuel Julien. All Rights Reserved.
|
|
----------------------------------------------------------------------------- */
|
|
|
|
|
|
#include "reflection/nenum_string.h"
|
|
#include "nstring/nstring.h"
|
|
|
|
using namespace GS::Reflection;
|
|
|
|
|
|
//------------------------------------------------------------------------------
|
|
const char *Enum::toString(int v, Dict *dict)
|
|
{
|
|
for (int n = 0; dict[n].string_v; ++n)
|
|
if (dict[n].enum_v == v)
|
|
return dict[n].string_v;
|
|
return 0;
|
|
}
|
|
int Enum::fromString(const char *s, Dict *dict)
|
|
{
|
|
GS::String string_v(s);
|
|
for (int n = 0; dict[n].string_v; ++n)
|
|
if (string_v == dict[n].string_v)
|
|
return dict[n].enum_v;
|
|
return -1;
|
|
}
|
|
//------------------------------------------------------------------------------
|