pub struct Domain {
pub name: Name,
pub requirements: Vec<Requirement>,
pub types: TypeDeclarations,
pub constants: TypedList<Name>,
pub predicates: Vec<PredicateDecl>,
pub functions: Vec<FunctionDecl>,
pub actions: Vec<BasicAction>,
pub durative_actions: Vec<DurativeAction>,
pub derived_predicates: Vec<DerivedPredicate>,
}Expand description
A parsed PDDL domain file.
Produced by super::parser::parse_domain / super::parser::parse_domain_str.
Fields§
§name: NameThe domain name from (domain <name>).
requirements: Vec<Requirement>Declared requirements (:requirements).
types: TypeDeclarationsType hierarchy declarations (:types).
constants: TypedList<Name>Domain-level constants (:constants).
predicates: Vec<PredicateDecl>Predicate declarations (:predicates).
functions: Vec<FunctionDecl>Numeric function declarations (:functions).
actions: Vec<BasicAction>Instantaneous actions (:action).
durative_actions: Vec<DurativeAction>Temporal actions (:durative-action).
derived_predicates: Vec<DerivedPredicate>Derived predicates / axioms (:derived).
Implementations§
Source§impl Domain
impl Domain
Sourcepub fn sort_alphabetically(&mut self)
pub fn sort_alphabetically(&mut self)
Sort all declaration lists alphabetically by name.
Sorts predicates, functions, actions, durative actions, derived predicates, and items within each typed group (constants, types) for deterministic ordering.
Trait Implementations§
impl StructuralPartialEq for Domain
Auto Trait Implementations§
impl Freeze for Domain
impl RefUnwindSafe for Domain
impl Send for Domain
impl Sync for Domain
impl Unpin for Domain
impl UnsafeUnpin for Domain
impl UnwindSafe for Domain
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more