schell / schell/wgsl-rs

Support direct `<[T; N]>::method()` call syntax (QSelf paths)

Open
#131 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Rust
Stars
61
Forks
4
Avg merge
1d 21h
Merged PRs (30d)
9

Description

Follow-up to #107.

Currently only `T::method()` (resolved via monomorphization) works for complex-type trait impls. Direct `<[u32; 4]>::zero()` requires parsing `syn::ExprCall` with `qself` (qualified-self paths) in `Expr::parse`, then producing `FnPath::TypeMethod` with a mangled `ty` (e.g. `array_u32_4`).

Relates to #107.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in Expr::parse and trace how syn::ExprCall handles qself, then inspect FnPath::TypeMethod and the existing monomorphized T::method() path. Done means direct <[u32; 4]>::zero() syntax is parsed and emitted as FnPath::TypeMethod with the expected mangled type name, such as array_u32_4.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
compilers
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.