concepts.dm.pdsketch.parsers.csp_parser.PDSketchCSPProblemTransformer#
- class PDSketchCSPProblemTransformer[source]#
Bases:
PDSketchTransformer
Methods
- __mul__(other)#
Chain two transformers together, returning a new transformer.
- Parameters:
self (Transformer)
other (Transformer | TransformerChain[_Leaf_U, _Return_V])
- Return type:
TransformerChain[_Leaf_T, _Return_V]
- __new__(**kwargs)#
- action_controller(function_call)#
- action_definition(name, *defs)#
- action_definition2(name, extends, *defs)#
- action_effect(function_call)#
- action_instantiates(name)#
- action_name(name, kwargs=None)#
- action_parameters(args)#
- action_precondition(function_call)#
- annotated_function_call(annotation, function_call)#
- axiom_definition(decorator, vars, context, implies)#
- bool(v)#
- constant(name)#
- Return type:
- cspcommitflag(*args)#
- decorator_k(k)#
- decorator_kwarg(k, v=True)#
- decorator_kwargs(args)#
- decorator_v(v)#
- definition_decl(definition_type, definition_name)#
- derived_definition(signature, expr)#
- derived_name(name, kwargs=None)#
- derived_signature1(name, *args)#
- derived_signature2(name, *args)#
- ellipsis()#
- extended_macro_body(*body_statements)#
- extended_macro_definition(name, *defs)#
- extended_macro_effect(function_call)#
- extended_macro_name(name, kwargs=None)#
- extended_macro_parameters(args)#
- extended_macro_precondition(function_call)#
- extends_definition(filename)#
- fancy_generator_definition(name, parameters, certifies)#
- float(v)#
- function_annotation(kwargs)#
- function_call(name, *args)#
- function_name(name, kwargs=None)#
- generator_definition(name, parameters, certifies, context, generates)#
- generator_name(name, kwargs=None)#
- goal_definition(function_call)#
- init_definition_item(function_call)#
- int(v)#
- list(*args)#
- list_construction(*args)#
- list_expansion(e, args)#
- list_object_type_name(dtype)#
- list_value_type_name(dtype)#
- macro_content(*body_statements)#
- macro_definition(signature, body)#
- macro_name(name, kwargs=None)#
- macro_signature(name, *args)#
- method_name(predicate_name, _, method_name)#
- object_type_name(typedef)#
- object_type_name_unwrapped(typedef)#
- objects_definition(*constants)#
- pm_function_call(pm_sign, function_call)#
- pragma_definition(kwargs)#
- predicate_definition(name, *args)#
- predicate_definition2(name, *args)#
- predicate_group_definition(*args)#
- predicate_name(name, kwargs=None)#
- quantified_function_call(quantifier, *args)#
- quantifiedvariable(quantifier, variable)#
- quantifier_name(name, kwargs=None)#
- regression_body(*body_statements)#
- regression_definition(name, *defs)#
- regression_goal(function_call)#
- regression_name(name, kwargs=None)#
- regression_parameters(args)#
- regression_precondition(function_call)#
- regression_side_effect(function_call)#
- simple_function_call(name, *args)#
- slot(_, name, kwargs=None)#
- string(v)#
- transform(tree)#
Transform the given tree, and return the final result
- Parameters:
tree (Tree[_Leaf_T])
- Return type:
_Return_T
- type_definition(args)#
Parse a type definition.
Very ugly hack to handle multi-line definition in PDDL. In PDDL, type definition can be separated by newline. This kinds of breaks the parsing strategy that ignores all whitespaces. More specifically, consider the following two definitions:
(:types a b - a )
and
(:types a b - a )
- type_name(name)#
- typedconstant(name, typename)#
- typedvariable(name, typename)#
- value_type_name(typedef)#
- value_type_name_unwrapped(typedef)#
- vector_type_name(dtype, dim, choices, kwargs=None)#