For now I don't know of a good solution to this pattern, but there's
been some discussion about it:
https://github.com/JuliaLang/julia/issues/15174

You should definitely use a Nullable instead of returning nothing.


Regards

Le samedi 19 mars 2016 à 02:58 -0700, Jeffrey Sarnoff a écrit :
> You may be misusing nothing.  It is unusual that a function would
> return nothing some of the time and something other times.
> Take a look at http://docs.julialang.org/en/latest/manual/faq/#nothin
> gness-and-missing-values
> If you have additional questions about this, please give an example
> of what get_a(...) is getting and why it would be nothing some of the
> time.
> 
> > Hi All
> > 
> > 
> > I found my self writing code like this a lot:
> > 
> > x = get_a(...)
> > 
> > if x != nothing
> >     y::A = x
> >     do_sth(y, ...)
> > end
> > 
> > In the above, I have to check for nothing first, and if it is not
> > nothing, then I do a type assert to make sure the type is what I
> > expected.
> > 
> > Is there any function or macro in Julia that can help this?
> > 
> > I know in F#, I have option.bind, so option.bind f x is equivalent
> > to a pattern match:  if x is None - > None; if x is something ->
> > f(something)
> > 
> > Also in C#, I have "customers?[0]?.Orders?.Count();"  (as long as
> > there is null before ?, it returns null immediately)
> > 
> > Does Julia have something similar?
> > 
> > 

Reply via email to