On 13.07.2013 18:25, Patrick Walton wrote:
On 7/13/13 7:27 AM, Michael Woerister wrote:
So, I thought it might be a good idea if I tried to remove the
spanned<T> struct altogether and added the span field directly to the
types that are wrapped at the moment. If needed, I would also add a
Spanned trait that allows to abstract over anything having a span.
Because this would affect quite a bit of the codebase (albeit not
semantically) I thought, I'd better ask beforehand if you people think
this is a good idea. Or maybe I am missing a reason for keeping the
spanned<T> struct around?

I might prefer to just use a compressed side table for memory usage reasons. Can we measure how much space the spans are taking up in the AST?

Patrick

_______________________________________________
Rust-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/rust-dev

Thinking about it, side table or not, the spanned<T> struct would go away in its current form anyway, right? So it should be a step in the right direction, to gradually remove its usages. Since spanned<T> affects how nodes using it are accessed in general (because of the .node indirection), this would also affect parts of the code that don't use spanning information. My motivation for removing spanned<T> is that code using any type wrapped in it would become cleaner. Implementing a side table approach would then be a consequent step, building on the removal of spanned<T>.

-Michael
_______________________________________________
Rust-dev mailing list
[email protected]
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to