Skip to content

Commit 0c0f7de

Browse files
Remove _get_dims_length
1 parent 8ebe151 commit 0c0f7de

File tree

3 files changed

+5
-3
lines changed

3 files changed

+5
-3
lines changed

src/qobj/energy_restricted.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,8 @@ function Base.show(io::IO, s::EnrSpace)
7070
return nothing
7171
end
7272

73+
Base.length(s::EnrSpace{N}) where {N} = N
74+
7375
Base.:(==)(s_enr1::EnrSpace, s_enr2::EnrSpace) = (s_enr1.size == s_enr2.size) && (s_enr1.dims == s_enr2.dims)
7476

7577
dimensions_to_dims(s_enr::EnrSpace) = s_enr.dims

src/qobj/quantum_object_base.jl

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -240,9 +240,7 @@ get_dimensions_from(
240240

241241
# this creates a list of HilbertSpace(1), it is used to generate `from` for Ket, and `to` for Bra
242242
space_one_list(dimensions::NTuple{N,AbstractSpace}) where {N} =
243-
ntuple(i -> HilbertSpace(1), Val(sum(_get_dims_length, dimensions)))
244-
_get_dims_length(::HilbertSpace) = 1
245-
_get_dims_length(::EnrSpace{N}) where {N} = N
243+
ntuple(i -> HilbertSpace(1), Val(sum(length, dimensions)))
246244

247245
# functions for getting Float or Complex element type
248246
_float_type(A::AbstractQuantumObject) = _float_type(eltype(A))

src/qobj/space.jl

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,6 @@ struct HilbertSpace <: AbstractSpace
2222
end
2323
end
2424

25+
Base.length(s::HilbertSpace) = 1
26+
2527
dimensions_to_dims(s::HilbertSpace) = SVector{1,Int}(s.size)

0 commit comments

Comments
 (0)