[Maintenance]: TokenFiltering
Maintainers usually reply within 1 day
@bubblobill is already working on this.
Since Sep 11, 2026.
Assessment
This issue has not been assessed yet.
Description
Describe the problem
Zone.Filter interface is used in various places with most implementations being in FindTokenFunctions.
Since the filter is used in many capacities, is not only limited to a single zone, and is actually filtering tokens, keeping it in Zone seems inappropriate.
The code in FindTokenFunctions is kind of convoluted and adding features can be non-trivial. Additionally, it cannot really be easily leveraged for use in other functions.
The improvement you'd like to see
- Since the interface functions as a Predicate, it should be changed to an actual Predicate, renaming the
matchTokenmethod totest. - Extract it out of Zone
- For all the various conditions currently coded in
FindTokenFunctions, create separate static classes. - Create a class for holding a list of filter instances with a defined execution order.
- Move hard-coded conditions that reduce the available token set (i.e. exclude lib/img tokens) to its own filter.
Expected Benefits
- Simplifying list operations.
- By defiing the execution order, cheap operations that are likely to filter out the most tokens can be done early, with expensive operations left to the end.
- Increases code legibility.
- Makes token filtering operations easier to implement in future.
Additional Context
No response
- Dominant language
- Java
- Stars
- 927
- Forks
- 286
- Avg merge
- 3d 17h
- Merged PRs (30d)
- 94
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from RPTools/maptool
-
[Bug]: An initiative list with no current entry logs an error on every changePossibly taken @dwizard0 claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Maintainers usually reply within 1 day
-
[Maintenance]: Migrate gradle dependency submission to modern alternativePossibly taken @VelpulaGangavardhan claimed this 18 days ago. Opencode-maintenance
Difficulty 2/5 1-3 hours Newbie friendliness 77/100
RPTools/maptool#6156 · 2 comments · 1 assignee ·
Maintainers usually reply within 1 day
-
code-maintenance
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
Maintainers usually reply within 1 day
-
feature
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Maintainers usually reply within 1 day
Similar issues
-
Cleanup: restore the interrupt flag in AiFailureAnalyzerPossibly taken @Rishankgupta08 claimed this today. Opengood first issue
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
seleniumboot/selenium-boot#258 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
johanhaleby/occurrent#1505 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
FasterXML/jackson-databind#6443 ·
Maintainers usually reply within 1 day
-
Docs: 2 broken linksOpen
Difficulty 1/5 Under an hour Newbie friendliness 78/100
Maintainers usually reply within 1 day