• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

phanrahan / magma / 1715 / 1
73%
master: 75%

Build:
Build:
LAST BUILD BRANCH: hwtypes2
DEFAULT BRANCH: master
Ran 02 May 2019 07:56PM UTC
Files 64
Run time 8s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

02 May 2019 07:51PM UTC coverage: 73.327%. First build
1715.1

push

travis-ci

rsetaluri
Initial implementation of new style class definition syntax

This is a first pass attempt at a "new-style" class definition
syntax for magma circuits.  This removes the requirement that the user
specify the definition inside a `definition` classmethod. Instead,
the user constructs an `IO` object with the interface and then performs
the desired wiring operators to define the circuit.

The `IO` object constructs a set of anonymous values to be used for the
ports.  The circuit definition is defined in terms of the anonymous
values.  These changes add a final stage to the metaclass `__new__`
logic defined in the method `process_new_style_definition`.

The `process_new_style_definition` method constructs an "old-style" IO
list (e.g. `["I0", m.In(m.Bit), ...]`) and passes this to the old logic
for setting up interfaces (`DeclareInterface`).  This required the
minimal amount of changes to the existing code, although we may consider
rearchitecting the entire interface pipeline given this opportunity.

Because we use the old-style interface setup logic, we must traverse the
definition graph defined on the temporary anonymous values setup by the
`IO` object and replace the anonymous interface values with the concrete
values from the old-style interface setup logic.

`process_new_style_definition` also traverses the definition graph and
"places" the instances (by using `self.place`) within the current
definition.

4176 of 5695 relevant lines covered (73.33%)

0.73 hits per line

Source Files on job 1715.1
  • Tree
  • List 0
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 645
  • Travis Job 1715.1
  • b4c3d876 on github
  • Next Job for on remove-definition-method (#1718.1)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc