Skip to content

Commit

Permalink
fix dot broadcasts in @fwdmodel
Browse files Browse the repository at this point in the history
  • Loading branch information
marius311 committed Sep 9, 2023
1 parent dfe2006 commit d8dd7c1
Showing 1 changed file with 14 additions and 10 deletions.
24 changes: 14 additions & 10 deletions src/simpleppl.jl
Original file line number Diff line number Diff line change
Expand Up @@ -32,12 +32,14 @@ macro fwdmodel(def)
return :(_vars[$(QuoteNode(var))] = (Base.@isdefined($var) && !ismissing($var) ? $var : ($var = $rhs)))
elseif !isexpr(x, :block) && @capture(x, (f_(args__; kwargs__) | f_(args__)))
kwargs = kwargs == nothing ? () : kwargs
if (f isa Symbol) && !(f in maybe_local_var) && isdefined(__module__, f)
if is_simpleppl_model(getfield(__module__, f))
return :($f($(Simulate()), _vars, rng, $(args...); $(kwargs...)))
if (f isa Symbol) && !startswith(string(f),".")
if !(f in maybe_local_var) && isdefined(__module__, f)
if is_simpleppl_model(getfield(__module__, f))
return :($f($(Simulate()), _vars, rng, $(args...); $(kwargs...)))
end
else
return :($is_simpleppl_model($f) ? $f($(Simulate()), _vars, rng, $(args...); $(kwargs...)) : $x)
end
else
return :($is_simpleppl_model($f) ? $f($(Simulate()), _vars, rng, $(args...); $(kwargs...)) : $x)
end
end
return x
Expand All @@ -58,12 +60,14 @@ macro fwdmodel(def)
return :($var = $rhs)
elseif !isexpr(x, :block) && @capture(x, (f_(args__; kwargs__) | f_(args__)))
kwargs = kwargs == nothing ? () : kwargs
if (f isa Symbol) && !(f in maybe_local_var) && isdefined(__module__, f)
if is_simpleppl_model(getfield(__module__, f))
return :($f($(Logpdf()), _logpdf, $(args...); $(kwargs...)))
if (f isa Symbol) && !startswith(string(f),".")
if !(f in maybe_local_var) && isdefined(__module__, f)
if is_simpleppl_model(getfield(__module__, f))
return :($f($(Logpdf()), _logpdf, $(args...); $(kwargs...)))
end
else
return :($is_simpleppl_model($f) ? $f($(Logpdf()), _logpdf, $(args...); $(kwargs...)) : $x)
end
else
return :($is_simpleppl_model($f) ? $f($(Logpdf()), _logpdf, $(args...); $(kwargs...)) : $x)
end
end
return x
Expand Down

0 comments on commit d8dd7c1

Please sign in to comment.