Coverage for install/scipp/core/_sizes.py: 75%
8 statements
« prev ^ index » next coverage.py v7.4.0, created at 2024-04-28 01:28 +0000
« prev ^ index » next coverage.py v7.4.0, created at 2024-04-28 01:28 +0000
1# SPDX-License-Identifier: BSD-3-Clause
2# Copyright (c) 2023 Scipp contributors (https://github.com/scipp)
3from typing import Dict, List, Optional, Sequence, Tuple, Union
6def _parse_dims_shape_sizes(
7 dims: Optional[Union[List[str], Tuple[str, ...]]] = None,
8 shape: Optional[Sequence[int]] = None,
9 sizes: Optional[Dict[str, int]] = None,
10):
11 if sizes is not None:
12 if dims is not None or shape is not None:
13 raise ValueError(
14 "When sizes is specified, dims and shape must "
15 "both be None. Got dims: {}, shape: {}".format(dims, shape)
16 )
17 dims = list(sizes.keys())
18 shape = list(sizes.values())
19 return {"dims": dims, "shape": shape}