mirror of
https://github.com/3lswear/webserv.git
synced 2025-10-28 21:07:59 +03:00
tmp
This commit is contained in:
@@ -84,7 +84,7 @@ void toml_node::setNil(void)
|
|||||||
type = NIL;
|
type = NIL;
|
||||||
}
|
}
|
||||||
|
|
||||||
void toml_node::setObject(TOMLMap *obj)
|
void toml_node::setObject(TOMLMap &obj)
|
||||||
{
|
{
|
||||||
value.map = obj;
|
value.map = obj;
|
||||||
type = MAP;
|
type = MAP;
|
||||||
|
|||||||
@@ -16,17 +16,17 @@
|
|||||||
class toml_node
|
class toml_node
|
||||||
{
|
{
|
||||||
|
|
||||||
union u_value
|
struct u_value
|
||||||
{
|
{
|
||||||
std::string *str;
|
std::string str;
|
||||||
int integer;
|
int integer;
|
||||||
bool boolean;
|
bool boolean;
|
||||||
/* std::vector<toml_node *> *array; */
|
/* std::vector<toml_node *> *array; */
|
||||||
TOMLArray *array;
|
TOMLArray array;
|
||||||
/* std::map<std::string, toml_node *> *map; */
|
/* std::map<std::string, toml_node *> *map; */
|
||||||
TOMLMap *map;
|
TOMLMap map;
|
||||||
/* std::vector<std::map<std::string, toml_node> > *map_array; */
|
/* std::vector<std::map<std::string, toml_node> > *map_array; */
|
||||||
TOMLMapArray *map_array;
|
TOMLMapArray map_array;
|
||||||
} value;
|
} value;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|||||||
@@ -61,11 +61,11 @@ namespace config
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
toml_node *TOMLParser::parseMap(void)
|
toml_node TOMLParser::parseMap(void)
|
||||||
{
|
{
|
||||||
/* std::cerr << "Parsing map" << std::endl; */
|
/* std::cerr << "Parsing map" << std::endl; */
|
||||||
toml_node *node = new toml_node;
|
toml_node node;
|
||||||
TOMLMap *mapObject = new TOMLMap;
|
TOMLMap mapObject;
|
||||||
bool completed = false;
|
bool completed = false;
|
||||||
while (!completed)
|
while (!completed)
|
||||||
{
|
{
|
||||||
@@ -103,24 +103,24 @@ namespace config
|
|||||||
case STRING:
|
case STRING:
|
||||||
{
|
{
|
||||||
tokenizer.rollBackToken();
|
tokenizer.rollBackToken();
|
||||||
(*mapObject)[key] = parseString();
|
mapObject[key] = parseString();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case OPEN_BRACKET:
|
case OPEN_BRACKET:
|
||||||
{
|
{
|
||||||
(*mapObject)[key] = parseArray();
|
mapObject[key] = parseArray();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case NUMBER:
|
case NUMBER:
|
||||||
{
|
{
|
||||||
tokenizer.rollBackToken();
|
tokenizer.rollBackToken();
|
||||||
(*mapObject)[key] = parseNumber();
|
mapObject[key] = parseNumber();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case BOOL:
|
case BOOL:
|
||||||
{
|
{
|
||||||
tokenizer.rollBackToken();
|
tokenizer.rollBackToken();
|
||||||
(*mapObject)[key] = parseBool();
|
mapObject[key] = parseBool();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case MAPARRAY_DECL:
|
case MAPARRAY_DECL:
|
||||||
@@ -153,7 +153,7 @@ namespace config
|
|||||||
// throw std::logic_error("parseMap: no more tokens");
|
// throw std::logic_error("parseMap: no more tokens");
|
||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
node->setObject(mapObject);
|
node.setObject(mapObject);
|
||||||
return (node);
|
return (node);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user