beeware / beeware/rubicon-objc

Proposal for nicer init()

Open
#26 19 comments 1 reaction 0 assignees View on GitHub
enhancement
Dominant language
Python
Stars
301
Forks
70
Avg merge
1d 8h
Merged PRs (30d)
18

Description

Through trial and error I got following to pass:

```
tmp = ObjCClass("UINavigationController").alloc().initWithRootViewController_(root)
```

Wouldn't it be nice to get that data from call signature:

```
tmp = ObjCClass("UINavigationController").alloc().init(rootViewController=root)
```

And then, perhaps, move to:

```
UINavigationController = ObjCClass("UINavigationController")
tmp = UINavigationController(rootViewController=root)
```

Contributor guide

Open the contributing guide

Research direction

Start by reading the current ObjCClass and allocation/init entry points, then reproduce the UINavigationController examples from the issue. Done means the proposed keyword-based init behavior is specified and implemented consistently, including the shorter UINavigationController(rootViewController=root) form, with tests covering the supported call signatures.

Written by the indexing model from the issue text.

Assessment

Tech stack
objective-c, python
Domain
api
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.