#include <ext/hash_map>
#include <locale>
+//! A list of strings, each string representing an effect.
typedef std::vector<std::string> Literals;
+//! A map, but really a list of pairs, the precondition as a string, and a bool, true if it's a hard precondition, otherwise false.
typedef __gnu_cxx::hash_map<std::string,bool> Preconditions;
+//! A map from returnvalue of the execution to the effects achieved.
typedef __gnu_cxx::hash_map<int,Literals> EffectsMap;
// These are needed to be able to use std::string as key in a hash_map.