MCPcopy Create free account
hub / github.com/archlinux/archinstall / convert

Method convert

archinstall/lib/models/device.py:373–393  ·  view source on GitHub ↗
(
		self,
		target_unit: Unit,
		sector_size: SectorSize | None = None,
	)

Source from the content-addressed store, hash-verified

371 )
372
373 def convert(
374 self,
375 target_unit: Unit,
376 sector_size: SectorSize | None = None,
377 ) -> Size:
378 if target_unit == Unit.sectors and sector_size is None:
379 raise ValueError('If target has unit sector, a sector size must be provided')
380
381 if self.unit == target_unit:
382 return self
383 elif self.unit == Unit.sectors:
384 norm = self._normalize()
385 return Size(norm, Unit.B, self.sector_size).convert(target_unit, sector_size)
386 else:
387 if target_unit == Unit.sectors and sector_size is not None:
388 norm = self._normalize()
389 sectors = math.ceil(norm / sector_size.value)
390 return Size(sectors, Unit.sectors, sector_size)
391 else:
392 value = int(self._normalize() / target_unit.value)
393 return Size(value, target_unit, self.sector_size)
394
395 def as_text(self) -> str:
396 return self.format_size(

Callers 5

format_sizeMethod · 0.95
si_unit_highestMethod · 0.95
_setup_lvmMethod · 0.80
_setup_partitionMethod · 0.80

Calls 2

_normalizeMethod · 0.95
SizeClass · 0.85

Tested by

no test coverage detected