Closed
Description
Is the following behaviour really intended?
julia> vi
/=======================================================================
| VarInfo
|-----------------------------------------------------------------------
| Varnames : ["p"]
| Range : UnitRange{Int64}[1:1]
| Vals : Real[0.9574412442107834]
| GIDs : Set{DynamicPPL.Selector}[Set([])]
| Orders : [0]
| Logp : -0.043490923558696964
| #produce : 1
| flags : Dict("del" => [0],"trans" => [0])
\=======================================================================
julia> vi[VarName{:p}("")]
0.9574412442107834
julia> vi[VarName{:p}("")] = 0.5 # why not allow this?
ERROR: ArgumentError: indexed assignment with a single value to many locations is not supported; perhaps use broadcasting `.=` instead?
Stacktrace:
[1] setindex_shape_check(::Float64, ::Int64) at ./indices.jl:234
[2] macro expansion at ./multidimensional.jl:722 [inlined]
[3] _unsafe_setindex!(::IndexLinear, ::Array{Real,1}, ::Float64, ::UnitRange{Int64}) at ./multidimensional.jl:717
[4] _setindex! at ./multidimensional.jl:712 [inlined]
[5] setindex! at ./abstractarray.jl:1074 [inlined]
[6] setval!(::VarInfo{DynamicPPL.Metadata{Dict{VarName,Int64},Array{Distribution,1},Array{VarName,1},Array{Real,1},Array{Set{DynamicPPL.Selector},1}},Real}, ::Float64, ::VarName{:p}) at /home/philipp/.julia/packages/DynamicPPL/PppLw/src/varinfo.jl:311
[7] setindex!(::VarInfo{DynamicPPL.Metadata{Dict{VarName,Int64},Array{Distribution,1},Array{VarName,1},Array{Real,1},Array{Set{DynamicPPL.Selector},1}},Real}, ::Float64, ::VarName{:p}) at /home/philipp/.julia/packages/DynamicPPL/PppLw/src/varinfo.jl:966
[8] top-level scope at REPL[36]:1
julia> vi[VarName{:p}("")] = [0.5]
1-element Array{Float64,1}:
0.5
Metadata
Metadata
Assignees
Labels
No labels