AlloyTools / org.alloytools.alloy

Alloy is a language for describing structures and a tool for exploring them. It has been used in a wide range of applications from finding holes in security mechanisms to designing telephone switching networks. This repository contains the code for the tool.
Other
711 stars 123 forks source link

Include derived functions from imported modules #250

Closed nmacedo closed 3 months ago

nmacedo commented 6 months ago

Functions without parameters defined in the main module show up in the visualizer. However, functions without parameters from imported modules are never included in the visualization (think of the next relation from util/ordering). This doesn't seem consistent since sigs/fields from imported modules appear in the visualization, and imported derived functions are still available in the evaluator.

grayswandyr commented 5 months ago

Very important indeed! I'll add this to the 6.1 milestone for this reason. Feel free to remove the milestone if that is too much work.

PS: IIRC, macros aren't imported either.

nmacedo commented 4 months ago

Here's how it would look for util/ordering. I left the names qualified to avoid confusion. Of course, these elements can be hidden/customized in the theme like any others.

Screenshot 2024-05-15 at 12 23 41