Cadence Virtuoso SKILL library
Project description
VIRTUE
Cadence Virtuoso SKILL++ framework
Features:
- A standard library of packages with functions for common tasks
- A test framework modeled after pytest
- A TOML config file reader and writer
- A package import system that allows the library to define just a single top-level import table symbol that allows each package to be imported locally.
Example Test File
Note the package imports at the top
let(((Str Import['Str])
(Test Import['Test])
(Virtue Import['Virtue])
)
procedure(Test_emptyp()
assert(Str->emptyp(""))
assert(!Str->emptyp("test"))
)
procedure(Test_str2bool()
assert(Str->str2bool("true"))
assert(Str->str2bool("TRUE"))
assert(!Str->str2bool("false"))
)
procedure(Test_str2bool_error()
assert(!errset(Str->str2bool("Nothing")))
)
Test->RunFile(list(nil
'Test_emptyp Test_emptyp
'Test_str2bool Test_str2bool
'Test_str2bool_error Test_str2bool_error
)
?filepath Virtue->GetCurrentFilePath()
)
)
Prints out the following when ran in the CIW:
FILE: /path/to/file/test_Str.ils
passed: Test_emptyp
passed: Test_str2bool
passed: Test_str2bool_error
3 / 3 tests passed
Installation
From Source
Just load the "virtue.init.ils" from the CIW window or add the following to your .cdsinit file:
load("/path/to/repo/virtue/virtue.init.ils")
Reminder: The following will change your top-level interpreter to SKILL++:
toplevel('ils)
Pip
You can install Virtue using pip from the virtue-skill PyPi package
pip install virtue-skill
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
virtue-skill-0.2.0.tar.gz
(43.7 kB
view hashes)
Built Distribution
Close
Hashes for virtue_skill-0.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d31736f6ae1979ea412b058563f6c5db28f154681f631180087cb3cd6855dfe1 |
|
MD5 | 6ff39bf2ef2bf1d7d18d0381124edd3f |
|
BLAKE2b-256 | ffaa93dc371832f893655fde2762602800970d8a3aab87b8f039bb61590882b3 |