Skip to content

Insert QuEST into debug API #751

@TysonRayJones

Description

@TysonRayJones

The debug API functions...

  • setSeeds()
  • setSeedsToDefault()
  • getSeeds()
  • getNumSeeds()
  • setInputErrorHandler()
  • setValidationOn()
  • setValidationOff()
  • setValidationEpsilonToDefault()
  • setValidationEpsilon()
  • getValidationEpsilon()
  • setMaxNumReportedItems()
  • setMaxNumReportedSigFigs()
  • setNumReportedNewlines()
  • setReportedPauliChars()
  • setReportedPauliStrStyle()
  • getGpuCacheSize()
  • clearGpuCache()
  • getEnvironmentString()

are named irksomely generically, and are likely to collide with user symbols (setSeeds()?! What was I thinking?!), or those of other libraries/dependencies.

In contrast, the environment API functions...

  • initQuESTEnv()
  • initCustomQuESTEnv()
  • finalizeQuESTEnv()
  • syncQuESTEnv()
  • reportQuESTEnv()
  • isQuESTEnvInit()
  • getQuESTEnv()
    conveniently contain QuEST, disambiguating from user namespace.

We should rename the debug functions to also include QuEST. The remaining API is fine, since containing either the name of a QuEST type (e.g. Qureg, CompMatr PauliStr, ...) or are an unambiguously "QuESTy" operation (applyHadamard, calcFidelity, ...)

While doing this, we may also consider renaming potentially ambiguous preprocessors (such as FLOAT_PRECISION), in addition to the CMake flags already nominated for rename in #709 .

Metadata

Metadata

Assignees

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions