AdaCore / AdaCore/libadalang

(python) is a type limited

Open
#503 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement public api
Dominant language
Ada
Stars
171
Forks
48
PR merge metrics
No merged PRs in 30d

Description

Hi guys,
I am trying to find out whether a given type is limited. This might be because its public via has a "limited" keyword, or its private view, or perhaps it is derived from a limited type (but itself doesn't explicitly has a limited keyword). It might also be implicitly limited in the case of a record with a field of a limited type.

The documentation doesn't seem to point to any such function. TypeDef have a f_has_limited, but that's only for the keyword itself. So I could go up the parent tree, or looking at each field of a record, but I wonder whether there is already such a built-in function, at least in python ?

Thanks

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing TypeDef.f_has_limited and the Python API documentation to determine whether an existing query covers inherited, private-view, and field-based limitedness. Done means documenting or exposing a query that consistently handles the limited-type cases described in the issue.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
api, devtools
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.