melt-umn / silver

An attribute grammar-based programming language for composable language extensions
http://melt.cs.umn.edu/silver/
GNU Lesser General Public License v3.0
57 stars 7 forks source link

Fix broken translation of child/local refs with remote decoration sites #760

Closed krame505 closed 1 year ago

krame505 commented 1 year ago

Changes

See #759 - a related problem exists in the translation. This change moves the logic for extracting the decorated tree from its remote decoration site into DecoratedNode, so the translation of an ordinary reference to a child/local can just call childDecorated/localDecorated. This also means that getting the tree from its remote decoration site is now cached.

Documentation

Added source comments.