Method: rich.measure.measure_renderables
Calls: 35, Exceptions: 0, Paths: 2Back
Path 1: 34 calls (0.97)
Console (34)
ConsoleOptions (34)
list (25) ['one', 'two', 'three', 'four'] (4) ['FOO'] (3) 'hello' (1) ['Hello, World'] (1)
Measurement (34)
1def measure_renderables(
2 console: "Console",
3 options: "ConsoleOptions",
4 renderables: Sequence["RenderableType"],
5) -> "Measurement":
6 """Get a measurement that would fit a number of renderables.
7
8 Args:
9 console (~rich.console.Console): Console instance.
10 options (~rich.console.ConsoleOptions): Console options.
11 renderables (Iterable[RenderableType]): One or more renderable objects.
12
13 Returns:
14 Measurement: Measurement object containing range of character widths required to
15 contain all given renderables.
16 """
17 if not renderables:
18 return Measurement(0, 0)
19 get_measurement = Measurement.get
20 measurements = [
21 get_measurement(console, options, renderable) for renderable in renderables
22 ]
23 measured_width = Measurement(
24 max(measurements, key=itemgetter(0)).minimum,
25 max(measurements, key=itemgetter(1)).maximum,
26 )
27 return measured_width
Path 2: 1 calls (0.03)
Console (1)
ConsoleOptions (1)
'' (1)
Measurement (1)
1def measure_renderables(
2 console: "Console",
3 options: "ConsoleOptions",
4 renderables: Sequence["RenderableType"],
5) -> "Measurement":
6 """Get a measurement that would fit a number of renderables.
7
8 Args:
9 console (~rich.console.Console): Console instance.
10 options (~rich.console.ConsoleOptions): Console options.
11 renderables (Iterable[RenderableType]): One or more renderable objects.
12
13 Returns:
14 Measurement: Measurement object containing range of character widths required to
15 contain all given renderables.
16 """
17 if not renderables:
18 return Measurement(0, 0)
19 get_measurement = Measurement.get
20 measurements = [
21 get_measurement(console, options, renderable) for renderable in renderables
22 ]
23 measured_width = Measurement(
24 max(measurements, key=itemgetter(0)).minimum,
25 max(measurements, key=itemgetter(1)).maximum,
26 )
27 return measured_width