Merge lp:~mhr3/dee/gi-modeliter into lp:dee
| Status: | Merged | ||||
|---|---|---|---|---|---|
| Approved by: | Mikkel Kamstrup Erlandsen on 2012-01-29 | ||||
| Approved revision: | 341 | ||||
| Merged at revision: | 340 | ||||
| Proposed branch: | lp:~mhr3/dee/gi-modeliter | ||||
| Merge into: | lp:dee | ||||
| Diff against target: |
161 lines (+78/-6) 3 files modified
src/dee-model.c (+38/-6) src/dee-model.h (+4/-0) tests/test-model-rows.c (+36/-0) |
||||
| To merge this branch: | bzr merge lp:~mhr3/dee/gi-modeliter | ||||
| Related bugs: |
|
| Reviewer | Review Type | Date Requested | Status |
|---|---|---|---|
| Mikkel Kamstrup Erlandsen (community) | 2012-01-26 | Approve on 2012-01-29 | |
|
Review via email:
|
|||
Description of the Change
Makes DeeModelIter usable from introspected languages by registering it as a boxed GType.
- 340. By Michal Hruby on 2012-01-26
-
Make DeeModelIter usable from introspected languages
Ok, I can the benchmarks myself. Looks like the boxing is a non-issue:
TRUNK:
=== SequenceModel.
Runs : 100
Total runtime : 2.262057s
Avg. runtime : 0.022621s
Std. deviation : 0.001089s
Accuracy : 95.185140% [good]
=== SequenceModel.
Runs : 100
Total runtime : 2.128361s
Avg. runtime : 0.021284s
Std. deviation : 0.000753s
Accuracy : 96.459987% [good]
THIS BRANCH:
=== SequenceModel.
Runs : 100
Total runtime : 2.286914s
Avg. runtime : 0.022869s
Std. deviation : 0.001062s
Accuracy : 95.357487% [good]
=== SequenceModel.
Runs : 100
Total runtime : 2.169105s
Avg. runtime : 0.021691s
Std. deviation : 0.000880s
Accuracy : 95.941740% [good]
- 341. By Michal Hruby on 2012-01-26
-
Add tests
| Michal Hruby (mhr3) wrote : | # |
Bump (tests were added).
Perfect! Having signals and iters work over GI is just awesome :-)

16 + /* FIXME: this implementation will work fine with DeeSequenceModel, but what
17 + * about others? */
This is not an issue. It's implicit in the DeeModel interface that iters are stable (that is you can keep them around and pass like pointers).
What I am mostly concerned about for this branch is performance. The signals will now do lookup in the Boxed type tree, so it might be a slow-down.
Before I can approve can you:
a) post benchmarks from before/after
b) add some tests for the boxing logic