DanielBarton446 / DanielBarton446/rust-go

[enhance]: Implement "Board" with a 1D vector rather than 2D

Open
#23 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Rust
Stars
1
Forks
0
PR merge metrics
No merged PRs in 30d

Description

### Proposed feature

It would be nice to consolidate how the board is represented.

For faster indexing, and consistency, it would be nice to use a 1d vector and abstract indexing based on the board's width and height.

Since we know that the board will not be "Jagged", there is no need to have a 2d vector, and it is causing inconsistencies.

Look into some of these neat resources:
https://stackoverflow.com/questions/46546321/implementing-2d-vector-syntax-for-accessing-a-1d-vector
https://doc.rust-lang.org/std/ops/trait.Index.html

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by tracing every place where the board is represented or indexed, then read Rust's std::ops::Index documentation and the linked 2D-vector indexing resource. Done means the board uses one non-jagged 1D vector, indexing is abstracted using its width and height, and the current representation inconsistencies are removed.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
game-dev
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.