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 SKILL code packaging system
- Define SKILL++ modules
- Create a SKILL++ package from a set of modules
- Import modules into a SKILL++ environment using the top-level "Import" table
- Support for SKILL environment management using Python environments with Conda and Pip
- Supports seamless execution of SKILL from Python using SkillBridge
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
Virtue requires Python >= 3.7 and can be installed using several methods:
- Conda
- Pip
- From source
See the installation instructions in the documentation for detailed instructions.
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.3.1.tar.gz
(54.2 kB
view hashes)
Built Distribution
Close
Hashes for virtue_skill-0.3.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cd0baa2efdc3fe1b095187669b45bbc3e640bbf10c508a3418c55cfd393ff953 |
|
MD5 | 6a78f9fa78bad81ff24d6599c5b40be6 |
|
BLAKE2b-256 | eefcb3975ed226b76884b0eaa7eb9a6990393408b52883414722a077e17de3c6 |