On 15 November 2014 22:39, stepharo <[email protected]> wrote:

>  Igor
>
> Could you document this part of NB?
> Write one page on your old blog so that after we can turn it into a real
> doc.
>
>
> i'd prefer to not change documentation, but implementation to match the
documentation.


>
> Stef
>
> On 15/11/14 22:28, Igor Stasenko wrote:
>
>
>
> On 15 November 2014 15:53, Max Leske <[email protected]> wrote:
>
>> Once again I’m struggling with NativeBoost. I’m trying to use
>> optCoerceNilToNull with this function:
>>
>>  ^self call: #(LGitReturnCodeEnum git_commit_create(
>>  LGitId * theCommitId,
>>  LGitRepository repo,
>>  String update_ref,
>>  LGitSignature * theAuthor,
>>  LGitSignature * theCommitter,
>>  String message_encoding,
>>  String theMessage,
>>  LGitTree theTree,
>>  int parent_count,
>>  LGitCommit * parentsPointer)) options: #( optCoerceNilToNull )
>>
>>  The last argument can be NULL, per documentation, (no parents).
>> LGitCommit is a subclass of NBExternalObject and apparently
>> NBExternalObjctType>>pushAsPointer: does *not* use the optCoerceNilToNull
>> option (the super implementation in NBExternalType>>pushAsPointer: however
>> does). The upshot of course is that the call fails with “an instance of
>> LGitCommit expected”.
>>
>>  My questions:
>> - The documentation says:
>>
>>
>>  "#optCoerceNilToNull"
>> "passing nil as a pointer-type argument, converts it to C NULL “
>>
>>   but apparently this doesn’t apply to every pointer type. Should the
>> documentation be updated?
>> - Why does NBExternlObjectType not use optCoerceNilToNull? I don’t want
>> to use tricks to pass null if I don’t have to.
>>
>
>  perhaps because it is not there? :)
>  So, lets add it.
>
>  - Related: there are instances where even non-pointer arguments are
>> allowed to be NULL. Why does optCoerceNilToNull only work for pointer types?
>>
>>
> like what? Suppose the argument type is a structure, e.g
>  "struct foo bar", that is non-pointer type. What in this case the NULL
> value for the structure?
>
>
>>  Igor! Help! :)
>>
>>  Cheers,
>> Max
>>
>>
>
>
> --
> Best regards,
> Igor Stasenko.
>
>
>


-- 
Best regards,
Igor Stasenko.

Reply via email to