7 """Contains methods used to transform Objects into InputProgram."""
12 if ASPMapper.__instance:
13 raise(
"Instance already exists")
14 super(ASPMapper, self).__init__()
18 """Return the instance of ASPMapper."""
23 def _get_actual_string(self, predicate, parameters_map):
24 """Return a string representing atom, from given predicate name,
25 and set of parameters."""
26 atom = predicate +
"("
27 for i
in range(0, len(parameters_map)):
30 object_term = parameters_map[i]
31 if object_term
is None:
32 raise(
"Wrong term number of predicate " + predicate)
33 if isinstance(object_term, int):
34 atom += str(object_term)
35 elif isinstance(object_term, SymbolicConstant):
38 atom +=
"\"" + str(object_term) +
"\""
42 def _get_id(self, atom):
43 """Return a string representing a predicate."""
47 return atom[:atom.index(
'(')]
49 def _get_param(self, atom):
50 """Return a set of parameter string name."""
51 return ASPParser.parse(atom).get_parameters()