Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

COMMON: Implement Cue sheet parser #5334

Open
wants to merge 14 commits into
base: master
Choose a base branch
from
Open

Conversation

sev-
Copy link
Member

@sev- sev- commented Sep 18, 2023

By request of @mistydemeo

This is an extensible parser for Cue sheets. It does not implement all the known tags, I decided to go with a pragmatic approach and add them as long as I see unprocessed commands. The missing things are reported via warnings and full parsing trace is visible at debug level 5.

The class does not implement any access API to the parsed data structures, as I need more information regarding usage. This is a trivial task since the data is kept in a neat hierarchy with nested Common::Array lists.

Also, I added a simple test to the Director engine, so you could see the implementation in action. To invoke the test, run ./scummvm -p engines/director/lingo/tests --debugflags=text -d5 --auto-detect

Any feedback is welcome.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant