ixm-one/legacy

Public API calls should be located inside of Modules/API

Closed this issue · 5 comments

To allow users to understand what the "core" API calls for IXM are, each one should be located directly within the Modules/API directory. Currently the following commands do not meet this requirement:

  • dict
  • inspect
  • invoke
  • var (This name is unhelpful, and should be replaced)
  • upvar
  • genexp
  • glob (Perhaps this function should be removed altogether)
  • import
  • module
  • blueprint
  • log
  • parse
  • print
  • success
  • failure
  • global
  • internal
  • cache

upvar has been temporarily removed.

To expand further on the removal for upvar, it would in practice lead to silent bugs. In practice, it is better to simply call set() with the PARENT_SCOPE signature. If we're lucky, CMake might provide a better PARENT_SCOPE alternative, but we wouldn't be able to use it anyhow due to our minimum version requirement.

internal has been removed.

cache has been deleted.
var has been renamed to assign

genexp has been removed in an upcoming commit. Use string(CONCAT) instead.