Code Monkey home page Code Monkey logo

pddl-rs's Issues

Error when parsing file with comments (`;;`)

Cannot use pddl-rs to parse PDDL files containing comments (;;).

Using pddl = "0.0.6" in Cargo.toml

Code:

use pddl::{Parser, Problem};
use std::fs;

fn main() {
    let path = "./problem.pddl";
    let contents = fs::read_to_string(path).unwrap();

    let problem = Problem::from_str(&contents);

    println!("{:#?}", problem);
}

PDDL file (./problem.pddl):

(define (problem pb1)
    (:domain air-cargo)
    (:objects
        C1 C2 P1 P2 SFO JFK
    )
    (:init
        ;; types
        (Cargo C1)
        (Cargo C2)
        (Plane P1)
        (Plane P2)
        (Airport SFO)
        (Airport JFK)

        ;; locations
        (At C1 SFO)
        (At C2 JFK)
        (At P1 SFO)
        (At P2 JFK)
    )

    (:goal
        (and (At C1 JFK) (At C2 SFO))
    )
)

Error printed:

Err(
    Error(
        GreedyError {
            errors: [
                (
                    LocatedSpan {
                        offset: 113,
                        line: 7,
                        fragment: ";; types\n        (Cargo C1)\n        (Cargo C2)\n        (Plane P1)\n        (Plane P2)\n        (Airport SFO)\n        (Airport JFK)\n\n        ;; locations\n        (At C1 SFO)\n        (At C2 JFK)\n        (At P1 SFO)\n        (At P2 JFK)\n    )\n\n    (:goal\n        (and (At C1 JFK) (At C2 SFO))\n    )\n)",
                        extra: (),
                    },
                    Nom(
                        Tag,
                    ),
                ),
            ],
        },
    ),
)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.