rokucommunity / rokucommunity/brighterscript

Restructure lexer/parser folder structure

Open
#1,049 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Breaking Change
Dominant language
TypeScript
Stars
208
Forks
68
Avg merge
8h 39m
Merged PRs (30d)
39

Description

We currently support parsing brs/bs and xml files. However, now that the file api has been merged, we may start adding additional parsing (manifest, translation, generic json, etc).

We should restructure the lexer/parser folder structure so that they make more sense within the context of a project with many parsers.

Not sure the right place to put them, but perhaps something like this, where we migrate all of the file-specific stuff into a file-type-specific folder:

  • files/
    • brs/
      • parser/
      • lexer/
      • BrsFile.ts
    • xml/
      • parser/
      • XmlFile.ts
    • manifest/
      • parser/
      • ManifestFile.ts

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by inventorying the existing lexer and parser folders and the file-specific BrightScript and XML code. Compare that layout with the proposed files/brs, files/xml, and files/manifest structure, then define a consistent migration plan for future parsers. Done means the existing parsing behavior remains intact after the reorganization and the new structure is documented in the project.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
compilers
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.