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

ponder-lab / Hybridize-Functions-Refactoring / 25747161485 / 1
72%
main: 72%

Build:
DEFAULT BRANCH: main
Ran 12 May 2026 04:18PM UTC
Files 30
Run time 1s
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

12 May 2026 04:09PM UTC coverage: 70.959% (-0.3%) from 71.262%
25747161485.1

push

github

web-flow
Add `Parameter` skeleton + first inferred-tensor-types test (#463)

* Import `com.ibm.wala.cast.python.ml.types` in core + tests bundles.

Needed by the upcoming `Parameter.getTensorTypes()` API and its test, which
return/assert on Ariadne's `TensorType` from this package.

* Introduce `Parameter` analytical wrapper (self-contained, Jython-free public API).

A positional Python function parameter as understood by the hybridize analysis.
Holds the minimum context needed to identify the parameter (parent
`argumentsType` + index + owning `Function`) and exposes:

- `getIndex()`, `getName()` — primitive accessors.
- `getTensorTypes()` — queries Ariadne's `TensorTypeAnalysis` (read off the
  owning `Function`) for the tensor types associated with this parameter.
  Computed fresh on each call, so a query made before
  `Function.inferTensorTensorParameters` runs (when no analysis has been
  stashed yet) returns the empty set without caching it, and a later query
  after the stash returns the real set.

The constructor is package-private — `Parameter`s are only ever constructed
inside `Function`'s constructor. No `ParameterDefinition` carrier class:
keeping a separate syntactic/analytical split would mirror
`Function`/`FunctionDefinition` only stylistically, with no independent
construction lifecycle and no map-key identity beyond the parameter itself.
`matches(LocalPointerKey)` (the source-position equality with Ariadne's
`AstMethod`) is private — `getTensorTypes` is its only caller.

* `Function`: build `List<Parameter>` in ctor; stash tensor analysis; drop `matches`/`tensorAnalysisIncludesParameter`.

The function-level rolled-up tensor predicate
(`Function.inferTensorTensorParameters` -> `hasTensorParameter`) used to walk
the raw Jython `args.args` array, find matching `LocalPointerKey`s, and check
for a non-null `TensorVariable`. With per-parameter `Parameter` wrappers now
owning that lookup via `Parameter.getTensorTypes()`, the same predicate is
just `!... (continued)

1102 of 1553 relevant lines covered (70.96%)

0.71 hits per line

Source Files on job 25747161485.1
  • Tree
  • List 30
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 25747161485
  • 9a25765a on github
  • Prev Job for on main (##1260.1)
  • Next Job for on main (##1271.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