rokucommunity / rokucommunity/brighterscript

Eliminate `isAtRootLevel` and `namespaceAndFunctionDepth` from parser

Open
#1,074 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

isAtRootLevel and namespaceAndFunctionDepth were both added to help determine where library statements were permitted. However, we still parse them anyway, so this is just a validation reason. We should remove that unnecessary complexity from the parser, and instead enforce library statement locations in the validation cycle.

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 locating the parser logic that tracks isAtRootLevel and namespaceAndFunctionDepth, then trace the validation cycle for library statements. Remove the parser-only validation state and ensure the validation cycle enforces permitted library locations; done means parsing still succeeds and invalid locations are rejected during validation.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
compilers
Issue type
Refactor
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.