/// <summary> /// Handles the AST node visit. /// </summary> /// <param name="astNode">AST node.</param> public override void Visit(DomainDurActionAstNode astNode) { DurativeAction newDurativeAction = new DurativeAction { Name = astNode.Name, Parameters = MasterExporter.ToParameters(astNode.Parameters), Durations = MasterExporter.ToDurativeConstraints(astNode.DurationConstraint), Conditions = MasterExporter.ToDurativeConditions(astNode.Condition), Effects = MasterExporter.ToDurativeEffects(astNode.Effect) }; DomainData.DurativeActions.Add(newDurativeAction); }
/// <summary> /// Handles the AST node visit. /// </summary> /// <param name="astNode">AST node.</param> public override void Visit(AtSimpleDurationConstraintAstNode astNode) { ConstraintsData.Add(new AtDurativeConstraint(astNode.TimeSpecifier, MasterExporter.ToDurativeConstraints(astNode.DurationConstraint)[0])); }
/// <summary> /// Handles the AST node visit. /// </summary> /// <param name="astNode">AST node.</param> public override void Visit(AndSimpleDurationConstraintsAstNode astNode) { astNode.Arguments.ForEach(arg => ConstraintsData.AddRange(MasterExporter.ToDurativeConstraints(arg))); }