forked from mpusz/mp-units
2731 lines
79 KiB
HTML
2731 lines
79 KiB
HTML
|
|
<!doctype html>
|
|
<html lang="en" class="no-js">
|
|
<head>
|
|
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
|
|
<meta name="description" content="The quantities and units library for C++">
|
|
|
|
|
|
<meta name="author" content="mp-units Team">
|
|
|
|
|
|
<link rel="canonical" href="https://mpusz.github.io/mp-units/2.2/release_notes/">
|
|
|
|
|
|
<link rel="prev" href="../blog/archive/2023/">
|
|
|
|
|
|
|
|
<link rel="alternate" type="application/rss+xml" title="RSS feed" href="../feed_rss_created.xml">
|
|
<link rel="alternate" type="application/rss+xml" title="RSS feed of updated content" href="../feed_rss_updated.xml">
|
|
|
|
<link rel="icon" href="../assets/images/mp-units-color.svg">
|
|
<meta name="generator" content="mkdocs-1.6.0, mkdocs-material-9.5.26">
|
|
|
|
|
|
|
|
<title>Release Notes - mp-units</title>
|
|
|
|
|
|
|
|
<link rel="stylesheet" href="../assets/stylesheets/main.6543a935.min.css">
|
|
|
|
|
|
<link rel="stylesheet" href="../assets/stylesheets/palette.06af60db.min.css">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
|
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
|
|
<style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
|
|
|
|
|
|
|
|
<link rel="stylesheet" href="../stylesheets/extra.css">
|
|
|
|
<script>__md_scope=new URL("..",location),__md_hash=e=>[...e].reduce((e,_)=>(e<<5)-e+_.charCodeAt(0),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<meta property="og:type" content="website" >
|
|
|
|
<meta property="og:title" content="Release Notes - mp-units" >
|
|
|
|
<meta property="og:description" content="The quantities and units library for C++" >
|
|
|
|
<meta property="og:image" content="https://mpusz.github.io/mp-units/2.2/assets/images/social/release_notes.png" >
|
|
|
|
<meta property="og:image:type" content="image/png" >
|
|
|
|
<meta property="og:image:width" content="1200" >
|
|
|
|
<meta property="og:image:height" content="630" >
|
|
|
|
<meta property="og:url" content="https://mpusz.github.io/mp-units/2.2/release_notes/" >
|
|
|
|
<meta name="twitter:card" content="summary_large_image" >
|
|
|
|
<meta name="twitter:title" content="Release Notes - mp-units" >
|
|
|
|
<meta name="twitter:description" content="The quantities and units library for C++" >
|
|
|
|
<meta name="twitter:image" content="https://mpusz.github.io/mp-units/2.2/assets/images/social/release_notes.png" >
|
|
|
|
|
|
|
|
</head>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<body dir="ltr" data-md-color-scheme="default" data-md-color-primary="indigo" data-md-color-accent="indigo">
|
|
|
|
|
|
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
|
|
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
|
|
<label class="md-overlay" for="__drawer"></label>
|
|
<div data-md-component="skip">
|
|
|
|
|
|
<a href="#release-notes" class="md-skip">
|
|
Skip to content
|
|
</a>
|
|
|
|
</div>
|
|
<div data-md-component="announce">
|
|
|
|
</div>
|
|
|
|
<div data-md-color-scheme="default" data-md-component="outdated" hidden>
|
|
|
|
<aside class="md-banner md-banner--warning">
|
|
<div class="md-banner__inner md-grid md-typeset">
|
|
|
|
You're not viewing the latest version.
|
|
<a href="../..">
|
|
<strong>Click here to go to latest.</strong>
|
|
</a>
|
|
|
|
</div>
|
|
<script>var el=document.querySelector("[data-md-component=outdated]"),outdated=__md_get("__outdated",sessionStorage);!0===outdated&&el&&(el.hidden=!1)</script>
|
|
</aside>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<header class="md-header" data-md-component="header">
|
|
<nav class="md-header__inner md-grid" aria-label="Header">
|
|
<a href=".." title="mp-units" class="md-header__button md-logo" aria-label="mp-units" data-md-component="logo">
|
|
|
|
<img src="../assets/images/mp-units-transparent-white.svg" alt="logo">
|
|
|
|
</a>
|
|
<label class="md-header__button md-icon" for="__drawer">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2Z"/></svg>
|
|
</label>
|
|
<div class="md-header__title" data-md-component="header-title">
|
|
<div class="md-header__ellipsis">
|
|
<div class="md-header__topic">
|
|
<span class="md-ellipsis">
|
|
mp-units
|
|
</span>
|
|
</div>
|
|
<div class="md-header__topic" data-md-component="header-topic">
|
|
<span class="md-ellipsis">
|
|
|
|
Release Notes
|
|
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<form class="md-header__option" data-md-component="palette">
|
|
|
|
|
|
|
|
|
|
<input class="md-option" data-md-color-media="(prefers-color-scheme)" data-md-color-scheme="default" data-md-color-primary="indigo" data-md-color-accent="indigo" aria-label="Switch to light mode" type="radio" name="__palette" id="__palette_0">
|
|
|
|
<label class="md-header__button md-icon" title="Switch to light mode" for="__palette_1" hidden>
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7a5 5 0 0 0-5 5 5 5 0 0 0 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1M8 13h8v-2H8v2m9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1 0 1.71-1.39 3.1-3.1 3.1h-4V17h4a5 5 0 0 0 5-5 5 5 0 0 0-5-5Z"/></svg>
|
|
</label>
|
|
|
|
|
|
|
|
|
|
|
|
<input class="md-option" data-md-color-media="(prefers-color-scheme: light)" data-md-color-scheme="default" data-md-color-primary="custom" data-md-color-accent="custom" aria-label="Switch to dark mode" type="radio" name="__palette" id="__palette_1">
|
|
|
|
<label class="md-header__button md-icon" title="Switch to dark mode" for="__palette_2" hidden>
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 7a5 5 0 0 1 5 5 5 5 0 0 1-5 5 5 5 0 0 1-5-5 5 5 0 0 1 5-5m0 2a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3m0-7 2.39 3.42C13.65 5.15 12.84 5 12 5c-.84 0-1.65.15-2.39.42L12 2M3.34 7l4.16-.35A7.2 7.2 0 0 0 5.94 8.5c-.44.74-.69 1.5-.83 2.29L3.34 7m.02 10 1.76-3.77a7.131 7.131 0 0 0 2.38 4.14L3.36 17M20.65 7l-1.77 3.79a7.023 7.023 0 0 0-2.38-4.15l4.15.36m-.01 10-4.14.36c.59-.51 1.12-1.14 1.54-1.86.42-.73.69-1.5.83-2.29L20.64 17M12 22l-2.41-3.44c.74.27 1.55.44 2.41.44.82 0 1.63-.17 2.37-.44L12 22Z"/></svg>
|
|
</label>
|
|
|
|
|
|
|
|
|
|
|
|
<input class="md-option" data-md-color-media="(prefers-color-scheme: dark)" data-md-color-scheme="slate" data-md-color-primary="black" data-md-color-accent="custom" aria-label="Switch to system preference" type="radio" name="__palette" id="__palette_2">
|
|
|
|
<label class="md-header__button md-icon" title="Switch to system preference" for="__palette_0" hidden>
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m17.75 4.09-2.53 1.94.91 3.06-2.63-1.81-2.63 1.81.91-3.06-2.53-1.94L12.44 4l1.06-3 1.06 3 3.19.09m3.5 6.91-1.64 1.25.59 1.98-1.7-1.17-1.7 1.17.59-1.98L15.75 11l2.06-.05L18.5 9l.69 1.95 2.06.05m-2.28 4.95c.83-.08 1.72 1.1 1.19 1.85-.32.45-.66.87-1.08 1.27C15.17 23 8.84 23 4.94 19.07c-3.91-3.9-3.91-10.24 0-14.14.4-.4.82-.76 1.27-1.08.75-.53 1.93.36 1.85 1.19-.27 2.86.69 5.83 2.89 8.02a9.96 9.96 0 0 0 8.02 2.89m-1.64 2.02a12.08 12.08 0 0 1-7.8-3.47c-2.17-2.19-3.33-5-3.49-7.82-2.81 3.14-2.7 7.96.31 10.98 3.02 3.01 7.84 3.12 10.98.31Z"/></svg>
|
|
</label>
|
|
|
|
|
|
</form>
|
|
|
|
|
|
|
|
<script>var media,input,key,value,palette=__md_get("__palette");if(palette&&palette.color){"(prefers-color-scheme)"===palette.color.media&&(media=matchMedia("(prefers-color-scheme: light)"),input=document.querySelector(media.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']"),palette.color.media=input.getAttribute("data-md-color-media"),palette.color.scheme=input.getAttribute("data-md-color-scheme"),palette.color.primary=input.getAttribute("data-md-color-primary"),palette.color.accent=input.getAttribute("data-md-color-accent"));for([key,value]of Object.entries(palette.color))document.body.setAttribute("data-md-color-"+key,value)}</script>
|
|
|
|
|
|
|
|
<label class="md-header__button md-icon" for="__search">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"/></svg>
|
|
</label>
|
|
<div class="md-search" data-md-component="search" role="dialog">
|
|
<label class="md-search__overlay" for="__search"></label>
|
|
<div class="md-search__inner" role="search">
|
|
<form class="md-search__form" name="search">
|
|
<input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
|
|
<label class="md-search__icon md-icon" for="__search">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5Z"/></svg>
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12Z"/></svg>
|
|
</label>
|
|
<nav class="md-search__options" aria-label="Search">
|
|
|
|
<a href="javascript:void(0)" class="md-search__icon md-icon" title="Share" aria-label="Share" data-clipboard data-clipboard-text="" data-md-component="search-share" tabindex="-1">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7 0-.24-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81a3 3 0 0 0 3-3 3 3 0 0 0-3-3 3 3 0 0 0-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9a3 3 0 0 0-3 3 3 3 0 0 0 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.15c-.05.21-.08.43-.08.66 0 1.61 1.31 2.91 2.92 2.91 1.61 0 2.92-1.3 2.92-2.91A2.92 2.92 0 0 0 18 16.08Z"/></svg>
|
|
</a>
|
|
|
|
<button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41Z"/></svg>
|
|
</button>
|
|
</nav>
|
|
|
|
<div class="md-search__suggest" data-md-component="search-suggest"></div>
|
|
|
|
</form>
|
|
<div class="md-search__output">
|
|
<div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix>
|
|
<div class="md-search-result" data-md-component="search-result">
|
|
<div class="md-search-result__meta">
|
|
Initializing search
|
|
</div>
|
|
<ol class="md-search-result__list" role="presentation"></ol>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="md-header__source">
|
|
<a href="https://github.com/mpusz/mp-units" title="Go to repository" class="md-source" data-md-component="source">
|
|
<div class="md-source__icon md-icon">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
|
|
</div>
|
|
<div class="md-source__repository">
|
|
mpusz/mp-units
|
|
</div>
|
|
</a>
|
|
</div>
|
|
|
|
</nav>
|
|
|
|
</header>
|
|
|
|
<div class="md-container" data-md-component="container">
|
|
|
|
|
|
|
|
|
|
|
|
<nav class="md-tabs" aria-label="Tabs" data-md-component="tabs">
|
|
<div class="md-grid">
|
|
<ul class="md-tabs__list">
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-tabs__item">
|
|
<a href=".." class="md-tabs__link">
|
|
|
|
|
|
|
|
|
|
Home
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-tabs__item">
|
|
<a href="../getting_started/introduction/" class="md-tabs__link">
|
|
|
|
|
|
|
|
|
|
Getting Started
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-tabs__item">
|
|
<a href="../users_guide/terms_and_definitions/" class="md-tabs__link">
|
|
|
|
|
|
|
|
|
|
User's Guide
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-tabs__item">
|
|
<a href="../blog/" class="md-tabs__link">
|
|
|
|
|
|
|
|
|
|
Blog
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-tabs__item md-tabs__item--active">
|
|
<a href="./" class="md-tabs__link">
|
|
|
|
|
|
|
|
|
|
Release Notes
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
</ul>
|
|
</div>
|
|
</nav>
|
|
|
|
|
|
|
|
<main class="md-main" data-md-component="main">
|
|
<div class="md-main__inner md-grid">
|
|
|
|
|
|
|
|
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
|
|
<div class="md-sidebar__scrollwrap">
|
|
<div class="md-sidebar__inner">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<nav class="md-nav md-nav--primary md-nav--lifted md-nav--integrated" aria-label="Navigation" data-md-level="0">
|
|
<label class="md-nav__title" for="__drawer">
|
|
<a href=".." title="mp-units" class="md-nav__button md-logo" aria-label="mp-units" data-md-component="logo">
|
|
|
|
<img src="../assets/images/mp-units-transparent-white.svg" alt="logo">
|
|
|
|
</a>
|
|
mp-units
|
|
</label>
|
|
|
|
<div class="md-nav__source">
|
|
<a href="https://github.com/mpusz/mp-units" title="Go to repository" class="md-source" data-md-component="source">
|
|
<div class="md-source__icon md-icon">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81z"/></svg>
|
|
</div>
|
|
<div class="md-source__repository">
|
|
mpusz/mp-units
|
|
</div>
|
|
</a>
|
|
</div>
|
|
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href=".." class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Home
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Getting Started
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_2">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Getting Started
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../getting_started/introduction/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Introduction
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../getting_started/quick_start/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Quick Start
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../getting_started/look_and_feel/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Look and Feel
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../getting_started/cpp_compiler_support/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
C++ compiler support (API/ABI)
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../getting_started/installation_and_usage/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Installation and Usage
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../getting_started/faq/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
FAQ
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
User's Guide
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_3">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
User's Guide
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/terms_and_definitions/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Terms and Definitions
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_2" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_3_2" id="__nav_3_2_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Framework Basics
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_2_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_3_2">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Framework Basics
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/framework_basics/interface_introduction/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Interface Introduction
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/framework_basics/design_overview/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Design Overview
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/framework_basics/systems_of_quantities/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Systems of Quantities
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/framework_basics/systems_of_units/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Systems of Units
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/framework_basics/simple_and_typed_quantities/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Simple and Typed Quantities
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/framework_basics/value_conversions/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Value Conversions
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/framework_basics/character_of_a_quantity/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Character of a Quantity
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/framework_basics/dimensionless_quantities/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Dimensionless Quantities
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/framework_basics/quantity_arithmetics/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Quantity Arithmetics
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/framework_basics/generic_interfaces/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Generic Interfaces
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/framework_basics/faster_than_lightspeed_constants/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Faster-than-lightspeed Constants
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/framework_basics/the_affine_space/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
The Affine Space
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/framework_basics/obtaining_metadata/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Obtaining Metadata
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/framework_basics/concepts/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Concepts
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/framework_basics/text_output/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Text Output
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_3" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_3_3" id="__nav_3_3_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Defining Systems
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_3_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_3_3">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Defining Systems
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/defining_systems/introduction/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Introduction
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/defining_systems/isq/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
International System of Quantities (ISQ)
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/defining_systems/si/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
International System of Units (SI)
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/defining_systems/strong_angular_system/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Strong Angular System
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/defining_systems/natural_units/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Natural Units
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_4" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_3_4" id="__nav_3_4_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Use Cases
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_4_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_3_4">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Use Cases
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/use_cases/pure_dimensional_analysis/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Pure Dimensional Analysis
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/use_cases/working_with_legacy_interfaces/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Working with Legacy Interfaces
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/use_cases/using_custom_representation_types/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Using Custom Representation Types
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/use_cases/interoperability_with_other_libraries/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Interoperability with Other Libraries
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/use_cases/extending_the_library/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Extending the Library
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/use_cases/wide_compatibility/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Wide Compatibility
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_5" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_3_5" id="__nav_3_5_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Examples
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_5_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_3_5">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Examples
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/examples/tags_index/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Tags Index
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_5_2" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_3_5_2" id="__nav_3_5_2_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
All Examples
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_3_5_2_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_3_5_2">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
All Examples
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/examples/hello_units/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
hello_units
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/examples/avg_speed/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
avg_speed
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../users_guide/examples/si_constants/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
si_constants
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_6" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_3_6" id="__nav_3_6_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Appendix
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_6_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_3_6">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Appendix
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../appendix/glossary/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Glossary
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../appendix/references/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
References
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" >
|
|
|
|
|
|
|
|
<div class="md-nav__link md-nav__container">
|
|
<a href="../blog/" class="md-nav__link ">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Blog
|
|
</span>
|
|
|
|
|
|
</a>
|
|
|
|
|
|
<label class="md-nav__link " for="__nav_4" id="__nav_4_label" tabindex="0">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
</div>
|
|
|
|
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_4">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Blog
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4_2" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_4_2" id="__nav_4_2_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Archive
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_2_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_4_2">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Archive
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../blog/archive/2024/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
2024
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../blog/archive/2023/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
2023
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--nested">
|
|
|
|
|
|
|
|
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4_3" >
|
|
|
|
|
|
<label class="md-nav__link" for="__nav_4_3" id="__nav_4_3_label" tabindex="0">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Categories
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_3_label" aria-expanded="false">
|
|
<label class="md-nav__title" for="__nav_4_3">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Categories
|
|
</label>
|
|
<ul class="md-nav__list" data-md-scrollfix>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../blog/category/releases/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Releases
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item">
|
|
<a href="../blog/category/wg21/" class="md-nav__link">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
WG21
|
|
</span>
|
|
|
|
|
|
</a>
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<li class="md-nav__item md-nav__item--active">
|
|
|
|
<input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
|
|
|
|
|
|
|
|
|
|
|
|
<label class="md-nav__link md-nav__link--active" for="__toc">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Release Notes
|
|
</span>
|
|
|
|
|
|
<span class="md-nav__icon md-icon"></span>
|
|
</label>
|
|
|
|
<a href="./" class="md-nav__link md-nav__link--active">
|
|
|
|
|
|
<span class="md-ellipsis">
|
|
Release Notes
|
|
</span>
|
|
|
|
|
|
</a>
|
|
|
|
|
|
|
|
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<label class="md-nav__title" for="__toc">
|
|
<span class="md-nav__icon md-icon"></span>
|
|
Table of contents
|
|
</label>
|
|
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#mp-units" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
mp-units
|
|
</span>
|
|
</a>
|
|
|
|
<nav class="md-nav" aria-label="mp-units">
|
|
<ul class="md-nav__list">
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#2.2.0" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
2.2.0 June 14, 2024
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#2.1.1" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
2.1.1 May 16, 2024
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#2.1.0" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
2.1.0 December 9, 2023
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#2.0.0" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
2.0.0 September 24, 2023
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#0.8.0" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
0.8.0 June 14, 2023
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#0.7.0" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
0.7.0 May 11, 2021
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#0.6.0" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
0.6.0 September 13, 2020
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#0.5.0" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
0.5.0 May 17, 2020
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#0.4.0" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
0.4.0 Nov 17, 2019
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#0.3.1" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
0.3.1 Sep 18, 2019
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#0.3.0" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
0.3.0 Sep 16, 2019
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#0.2.0" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
0.2.0 July 18, 2019
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
<li class="md-nav__item">
|
|
<a href="#0.1.0" class="md-nav__link">
|
|
<span class="md-ellipsis">
|
|
0.1.0 May 18, 2019
|
|
</span>
|
|
</a>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
</nav>
|
|
|
|
</li>
|
|
|
|
|
|
|
|
</ul>
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="md-content" data-md-component="content">
|
|
<article class="md-content__inner md-typeset">
|
|
|
|
|
|
|
|
|
|
<a href="https://github.com/mpusz/mp-units/edit/master/docs/release_notes.md" title="Edit this page" class="md-content__button md-icon">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10 20H6V4h7v5h5v3.1l2-2V8l-6-6H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h4v-2m10.2-7c.1 0 .3.1.4.2l1.3 1.3c.2.2.2.6 0 .8l-1 1-2.1-2.1 1-1c.1-.1.2-.2.4-.2m0 3.9L14.1 23H12v-2.1l6.1-6.1 2.1 2.1Z"/></svg>
|
|
</a>
|
|
|
|
|
|
|
|
|
|
|
|
<a href="https://github.com/mpusz/mp-units/raw/master/docs/release_notes.md" title="View source of this page" class="md-content__button md-icon">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17 18c.56 0 1 .44 1 1s-.44 1-1 1-1-.44-1-1 .44-1 1-1m0-3c-2.73 0-5.06 1.66-6 4 .94 2.34 3.27 4 6 4s5.06-1.66 6-4c-.94-2.34-3.27-4-6-4m0 6.5a2.5 2.5 0 0 1-2.5-2.5 2.5 2.5 0 0 1 2.5-2.5 2.5 2.5 0 0 1 2.5 2.5 2.5 2.5 0 0 1-2.5 2.5M9.27 20H6V4h7v5h5v4.07c.7.08 1.36.25 2 .49V8l-6-6H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h4.5a8.15 8.15 0 0 1-1.23-2Z"/></svg>
|
|
</a>
|
|
|
|
|
|
|
|
<h1 id="release-notes">Release Notes<a class="headerlink" href="#release-notes" title="Permanent link">¶</a></h1>
|
|
<h2 id="mp-units">mp-units<a class="headerlink" href="#mp-units" title="Permanent link">¶</a></h2>
|
|
<h3 id="2.2.0">2.2.0 <small>June 14, 2024</small><a class="headerlink" href="#2.2.0" title="Permanent link">¶</a></h3>
|
|
<ul>
|
|
<li>(!) feat: C++ modules support added by <a href="https://github.com/JohelEGP">@JohelEGP</a></li>
|
|
<li>(!) feat: New formatting specification implemented</li>
|
|
<li>(!) feat: <code>has_unit_symbol</code> support removed</li>
|
|
<li>(!) feat: ABI concerns resolved with introduction of u8 strings for symbols</li>
|
|
<li>(!) feat: API-related Conan, CMake, and preprocessor options redesigned</li>
|
|
<li>(!) feat: <code>core.h</code> removed</li>
|
|
<li>(!) feat: from now on units, dimensions, quantity specifications, and point origins have to be marked as <code>final</code></li>
|
|
<li>feat: implicit point origins support added</li>
|
|
<li>feat: unit default point origin support added</li>
|
|
<li>feat: <code>fma</code>, <code>isfinite</code>, <code>isinf</code>, and <code>isnan</code> math function added by <a href="https://github.com/NAThompson">@NAThompson</a></li>
|
|
<li>feat: <code>fma</code> for quantity points added</li>
|
|
<li>feat: <code>quantity_point</code> support added for <code>quantity_cast</code> and <code>value_cast</code></li>
|
|
<li>feat: <code>value_cast<Unit, Representation></code> added</li>
|
|
<li>feat: <code>value_cast<Quantity>(q)</code>, <code>value_cast<Quantity>(qp)</code> and <code>value_cast<QuantityPoint>(qp)</code> added by <a href="https://github.com/burnpanck">@burnpanck</a></li>
|
|
<li>feat: <code>interconvertible(QuantitySpec, QuantitySpec)</code> added</li>
|
|
<li>feat: <code>qp.quantity_from_zero()</code> added</li>
|
|
<li>feat: <code>value_type</code> type trait added</li>
|
|
<li>feat: do not print space between a number and <code>percent</code> or <code>per_mille</code></li>
|
|
<li>feat: <code>ppm</code> parts per million added by <a href="https://github.com/nebkat">@nebkat</a></li>
|
|
<li>feat: <code>atan2</code> 2-argument arctangent added by <a href="https://github.com/nebkat">@nebkat</a></li>
|
|
<li>feat: <code>fmod</code> floating-point division remainder added by <a href="https://github.com/nebkat">@nebkat</a></li>
|
|
<li>feat: <code>remainder</code> IEEE division remainder added by <a href="https://github.com/nebkat">@nebkat</a></li>
|
|
<li>feat: <code>std::format</code> support added</li>
|
|
<li>feat: unit text output support added</li>
|
|
<li>feat: formatting error messages improved</li>
|
|
<li>feat: improve types readability by eliminating extraneous <code>()</code> in references, prefixes, and <code>kind_of</code></li>
|
|
<li>feat: dimension and unit text output added</li>
|
|
<li>feat: some light and radiation ISQ quantities added</li>
|
|
<li>feat: allow configuring GSL library use</li>
|
|
<li>feat: freestanding support added</li>
|
|
<li>(!) refactor: <code>zero_Fahrenheit</code> renamed to <code>zeroth_degree_Fahrenheit</code></li>
|
|
<li>(!) refactor: SI-related trigonometric functions moved to the <code>si</code> subnamespace</li>
|
|
<li>(!) refactor: <code>math.h</code> header file broke up to smaller pieces</li>
|
|
<li>(!) refactor: <code>fixed_string</code> interface refactored</li>
|
|
<li>(!) refactor: <code>ReferenceOf</code> does not take a dimension anymore</li>
|
|
<li>(!) refactor: 'o' replaced with '1' as a modifier for <code>unit_symbol_solidus::one_denominator</code></li>
|
|
<li>(!) refactor: <code>get_kind()</code> now returns <code>kind_of</code></li>
|
|
<li>(!) refactor: FMT macros moved to <code>compat_macros.h</code></li>
|
|
<li>(!) refactor: <code>fixed_string</code> refactored to reflect the latest changes to <a href="https://wg21.link/P3094R2">P3094R2</a></li>
|
|
<li>(!) refactor: <code>basic_symbol_text</code> renamed to <code>symbol_text</code></li>
|
|
<li>(!) refactor: <code>ratio</code> hidden as an implementation detail behind <code>mag_ratio</code></li>
|
|
<li>(!) refactor: <code>framework.h</code> introduced</li>
|
|
<li>(!) refactor: type list tools made an implementation detail of the library</li>
|
|
<li>(!) refactor: header files with the entire system definitions moved up in the directory tree</li>
|
|
<li>(!) refactor: <code>absolute_point_origin</code> does not use CRTP anymore</li>
|
|
<li>refactor: system's units do not inherit from one another anymore</li>
|
|
<li>refactor: all units made <code>final</code></li>
|
|
<li>refactor: math functions constraints refactored</li>
|
|
<li>refactor: <code>si_quantities.h</code> added to improve compile-times</li>
|
|
<li>refactor: <code>validate_ascii_string</code> refactored to <code>is_basic_literal_character_set</code></li>
|
|
<li>refactor: <code>underlying_type</code> split to <code>wrapped_type</code> and <code>value_type</code> and used in code</li>
|
|
<li>refactor: code refactored to comply with clang-tidy</li>
|
|
<li>refactor: remove dependency on <code><ranges></code> header and switch to use an iterator-based <code>copy</code> algorithm</li>
|
|
<li>refactor: <code>terminate</code> replaced with <code>abort</code> and a header file added</li>
|
|
<li>refactor: most <code>std::remove_const_t</code> removed and some replaced with the GCC-specific workaround</li>
|
|
<li>refactor: not needed <code>remove_reference_t</code> and <code>remove_cvref_t</code> removed</li>
|
|
<li>fix: <code>QuantityLike</code> conversions required <code>Q::rep</code> instead of using one provided by <code>quantity_like_traits</code></li>
|
|
<li>fix: <code>QuantitySpec[Unit]</code> replaced with <code>make_reference</code> in <code>value_cast</code></li>
|
|
<li>fix: <code>ice_point</code> is now defined with the integral offset from <code>absolute_zero</code></li>
|
|
<li>fix: performance regression in <code>sudo_cast</code> fixed</li>
|
|
<li>fix: explicit object parameter support fixed</li>
|
|
<li>fix: missing <code>version</code> header file added to <code>hacks.h</code></li>
|
|
<li>fix: <code>quantity_cast</code> to accept lvalue references (thanks <a href="https://github.com/burnpanck">@burnpanck</a>)</li>
|
|
<li>fix: <code>value_cast</code> with lvalue references to <code>quantity_point</code> (thanks <a href="https://github.com/burnpanck">@burnpanck</a>)</li>
|
|
<li>docs: project blog and first posts added</li>
|
|
<li>docs: project documentation layout refactored</li>
|
|
<li>docs: "Interoperability with Other Libraries" chapter added</li>
|
|
<li>docs: "Framework Basics" chapters updated and cleaned up</li>
|
|
<li>docs: <code>smoot</code> unit example added to the main page</li>
|
|
<li>docs: "Code Example" chapter renamed to "Look and Feel" and reordered in TOC to be after "Quick Start"</li>
|
|
<li>docs: "Quick Start" chapter reworked to be simpler and include quantity points</li>
|
|
<li>docs: "Quantity points" chapter extended</li>
|
|
<li>docs: "The Affine Space" chapter updated to reflect the recent design changes</li>
|
|
<li>docs: "Working with Legacy interfaces" chapter added</li>
|
|
<li>docs: "Text Output" chapter updated</li>
|
|
<li>docs: mkdocs social plugin enabled</li>
|
|
<li>docs: project logo and custom color scheme added</li>
|
|
<li>docs: minimum compiler requirements updated</li>
|
|
<li>docs: unit symbols admonition extended in the "Quick Start" chapter</li>
|
|
<li>docs: Cairo dependency described in the MkDocs section</li>
|
|
<li>docs: "hello units" example updated with dimensions output</li>
|
|
<li>docs: "Text Output" chapter updated with the recent formatting changes</li>
|
|
<li>docs: formatting grammar language changed to EBNF</li>
|
|
<li>docs: "Project structure" chapter expanded</li>
|
|
<li>docs: CITATION.cff updated</li>
|
|
<li>(!) build: Conan and CMake options refactored</li>
|
|
<li>(!) build: <code>MP_UNITS_AS_SYSTEM_HEADERS</code> renamed to <code>MP_UNITS_BUILD_AS_SYSTEM_HEADERS</code></li>
|
|
<li>(!) build: <code>MP_UNITS_BUILD_LA</code> and <code>MP_UNITS_IWYU</code> CMake options now have <code>_DEV_</code> in the name</li>
|
|
<li>build: gsl-lite updated to 0.41.0</li>
|
|
<li>build: catch2 updated to 3.5.1</li>
|
|
<li>build: fmt updated to 10.2.1</li>
|
|
<li>build: gitpod environment updated</li>
|
|
<li>build: <code>check_cxx_feature_supported</code> added</li>
|
|
<li>build: IWYU path handling fixed</li>
|
|
<li>build: IWYU enabled on GCC</li>
|
|
<li>build: <code>CMAKE_EXPORT_COMPILE_COMMANDS</code> flag enabled for the developer's build</li>
|
|
<li>build(conan): <code>generate()</code> now set <code>cache_variables</code></li>
|
|
<li>build(conan): <code>can_run</code> check added before running tests</li>
|
|
<li>ci: Conan and CMake CI now use different cache names</li>
|
|
<li>ci: gcc-14 added</li>
|
|
<li>ci: <code>clang-tidy</code> CI added</li>
|
|
</ul>
|
|
<h3 id="2.1.1">2.1.1 <small>May 16, 2024</small><a class="headerlink" href="#2.1.1" title="Permanent link">¶</a></h3>
|
|
<ul>
|
|
<li>fix: unit tests compilation on gcc-14 fixed</li>
|
|
<li>fix: explicit <code>this</code> parameter support fixed</li>
|
|
</ul>
|
|
<h3 id="2.1.0">2.1.0 <small>December 9, 2023</small><a class="headerlink" href="#2.1.0" title="Permanent link">¶</a></h3>
|
|
<ul>
|
|
<li>(!) feat: <code>inverse()</code> support added for dimensions, quantity_spec, units, and references
|
|
(<code>1 / s</code> will now create <code>quantity</code> and not a <code>Unit</code>)</li>
|
|
<li>(!) feat: <code>quantity_point</code> does not provide <code>zero()</code> anymore</li>
|
|
<li>(!) feat: <code>quantity_spec</code> and its kind should not compare equal</li>
|
|
<li>(!) feat: mutating interface removed from <code>fixed_string</code></li>
|
|
<li>(!) feat: <code>common_type</code> with a raw value is not needed anymore as for a long time now raw values are
|
|
not convertible to the dimensionless quantities</li>
|
|
<li>(!) feat: <code>symbol_text</code> definition simplified</li>
|
|
<li>(!) feat: users are now allowed to inherit their own types from absolute point origins</li>
|
|
<li>(!) feat: interoperability with other libraries redesigned</li>
|
|
<li>feat: <code>basic_fixed_string(const CharT*, std::integral_constant<std::size_t, N>)</code> constructor added</li>
|
|
<li>feat: <code>isq::activity</code> added and <code>becquerel</code> definition updated to benefit from it</li>
|
|
<li>feat: <code>gray</code> and <code>sievert</code> now have correct associated quantity kinds</li>
|
|
<li>feat: <code>UnitCompatibleWith</code> concept added and applied to <code>in(U)</code> and <code>force_in(U)</code> functions</li>
|
|
<li>feat: quantities can now be multiplied and divided by units (no parenthesis needed anymore)</li>
|
|
<li>feat: <code>Magnitude / Unit</code> operator added</li>
|
|
<li>feat: equality for dimensions now will allow derived classes as well (but not from <code>derived_dimension</code>)</li>
|
|
<li>feat: <code>zero_Fahrenheit</code> point origin added</li>
|
|
<li>feat: equivalent point origins handling improved</li>
|
|
<li>feat(example): unit symbols added to the currency example</li>
|
|
<li>(!) refactor: <code>unit_symbol<fmt>(U)</code> signature refactored and the resulting text can now also be used at runtime</li>
|
|
<li>(!) refactor: <code>make_xxx</code> factory functions replaced with two-parameter constructors</li>
|
|
<li>(!) refactor: <code>unit_symbol</code> changed to <code>consteval</code></li>
|
|
<li>refactor: <code>in(U)</code> and <code>force_in(U)</code> now return <code>auto</code> to provide better diagnostics on clang</li>
|
|
<li>refactor: <code>quantity</code> operators constraints refactored</li>
|
|
<li>refactor: more type members added to <code>fixed_string</code> definition</li>
|
|
<li>refactor: <code>unit_symbol_formatting</code> enums now use <code>std::int8_t</code> as a representation type</li>
|
|
<li>fix: symbols of named dimensionless units with the ratio = 1 were not printed</li>
|
|
<li>fix: iterator is now properly updated for all cases in <code>unit_symbol</code></li>
|
|
<li>fix: Fahrenheit conversion ratio was inverted</li>
|
|
<li>fix: <code>CommonlyInvocableQuantities</code> was overconstrained for the current library design</li>
|
|
<li>fix: <code>are_ingredients_convertible</code> now mandates explicit conversion for <code>To</code> dimensionless quantities</li>
|
|
<li>fix: <code>quantity_point::point_for(PO)</code> constraints fixed</li>
|
|
<li>fix(example): <code>latitude</code> and <code>longitude</code> fixed to include <code>0</code> for <code>N</code> and <code>E</code> respectively</li>
|
|
<li>ci: clang-17 enabled</li>
|
|
<li>ci: apple-clang-15 enabled</li>
|
|
<li>ci: Added C++23 builds to the CI matrix</li>
|
|
<li>docs: "Getting Started" chapters updated</li>
|
|
<li>docs: "Basic Concepts" and "Interface Introduction" chapters updated</li>
|
|
<li>docs: "Design Overview" chapter added and "Concepts" chapter reworked</li>
|
|
<li>docs: "Output stream formatting" chapter updated</li>
|
|
<li>docs: "Default formatting" chapter updated</li>
|
|
<li>docs: "Derived unit symbols generation" chapter added</li>
|
|
<li>docs: outdated affine space chapter updated</li>
|
|
<li>docs: <code>CameCase</code> concept identifiers FAQ added</li>
|
|
<li>docs: <code>gravitational_potential_energy</code> equation fixed on a graph</li>
|
|
<li>docs: YouTube video link updated to the C++ on Sea 2023</li>
|
|
<li>docs: ISO papers reference added to docs and README</li>
|
|
<li>docs: a representation type in a dimensionless quantity FAQ fixed</li>
|
|
<li>docs: titles added to some important admonitions</li>
|
|
<li>docs: "Terms and Definitions" slightly updated</li>
|
|
<li>docs: "canonical unit" added to glossary and its documentation in code was updated</li>
|
|
<li>docs: Design overview graph updated</li>
|
|
</ul>
|
|
<h3 id="2.0.0">2.0.0 <small>September 24, 2023</small><a class="headerlink" href="#2.0.0" title="Permanent link">¶</a></h3>
|
|
<ul>
|
|
<li><code>units</code> namespace renamed to <code>mp_units</code> (#317)</li>
|
|
<li>header files in the <code><mp-units/...></code> rather then in <code><units/...></code> (#317)</li>
|
|
<li>the downcasting facility is removed (#383, #211, #32)</li>
|
|
<li>unified and simplified quantity creation (#274)</li>
|
|
<li>determining the best way to create a quantity (#413)</li>
|
|
<li>V2 <code>quantity_point</code> (#414)</li>
|
|
<li>introduction of <code>quantity_spec</code> to store not only <code>dimension</code> but also additional information about quantities (#405)</li>
|
|
<li><code>quantity</code> now takes <code>reference</code> object, which aggregates <code>quantity_spec</code> and a <code>unit</code> and a <code>representation</code> type</li>
|
|
<li>units, prefixes, dimensions, quantity specifications, and references are passed as NTTPs to templates and provide arithmetic operations and comparison</li>
|
|
<li>expression templates consistently used in all derived types to increase the readability (#351, #166)</li>
|
|
<li>derived dimensions are now factors of only base dimensions (#281)</li>
|
|
<li>convertibility of derived quantities (#427)</li>
|
|
<li>dimensions, quantity specifications, units, and references are now composable, significantly reducing the number of definitions and resulting types</li>
|
|
<li>heavily simplified unit systems definitions (no need to define unnamed derived units, systems-specific dimensions, aliases for quantities, concepts, UDLs, ... anymore)</li>
|
|
<li>improved definition of all systems</li>
|
|
<li>support for ISO 80000 Part 3-6 quantities</li>
|
|
<li>faster than lightspeed constants (#169)</li>
|
|
<li>extensions to quantity formatting with <code>fmt</code></li>
|
|
<li><code>quantity_kind</code> removed</li>
|
|
<li>improved casting of unit with <code>.in(Unit)</code>, <code>.force_in(Unit)</code> for <code>quantity</code> and <code>quantity_spec</code></li>
|
|
<li>numerical value accessor safety improved with <code>.numerical_value_in(Unit)</code> and <code>.force_numerical_value_in(Unit)</code></li>
|
|
<li><code>quantity</code> can no longer be constructed with a raw value (#434)</li>
|
|
<li>Implicit construction of quantities from a value (#410)</li>
|
|
<li><code>quantity_point</code> can no longer be constructed with just a <code>quantity</code> and an explicit <code>PointOrigin</code> is always needed</li>
|
|
<li><code>ceil</code> and <code>floor</code> are dangerous (#432)</li>
|
|
<li>quecto, ronto, ronna, quetta new SI prefixes support</li>
|
|
<li>comparison against zero added (#487)</li>
|
|
<li>documentation rewritten from scratch</li>
|
|
<li>many smaller changes not possible to address with the previous design (#205, #210, #134)</li>
|
|
</ul>
|
|
<h3 id="0.8.0">0.8.0 <small>June 14, 2023</small><a class="headerlink" href="#0.8.0" title="Permanent link">¶</a></h3>
|
|
<ul>
|
|
<li>(!) refactor: <code>common_quantity</code>, <code>common_quantity_for</code>, <code>common_quantity_point</code>, <code>common_quantity_kind</code>, and <code>common_quantity_point_kind</code> removed</li>
|
|
<li>(!) refactor: <code>named_derived_unit</code> removed as it was not used</li>
|
|
<li>(!) refactor: <code>derived_unit</code> renamed to <code>derived_scaled_unit</code></li>
|
|
<li>(!) refactor: <code>unit</code> renamed to <code>derived_unit</code></li>
|
|
<li>(!) refactor: <code>U::is_named</code> removed from the unit types and replaced with <code>NamedUnit</code> concept</li>
|
|
<li>(!) refactor: <code>PrefixFamily</code> support removed</li>
|
|
<li>(!) refactor: <code>mi(naut)</code> renamed to <code>nmi</code></li>
|
|
<li>(!) refactor: <code>knot</code> unit helper renamed to <code>kn</code> in FPS</li>
|
|
<li>(!) refactor: <code>knot</code> text symbol changed from <code>"knot"</code> to <code>"kn"</code></li>
|
|
<li>refactor: <code>quantity</code> <code>op+()</code> and <code>op-()</code> reimplemented in terms of <code>reference</code> rather then <code>quantity</code> types</li>
|
|
<li>refactor(example): <code>glide_computer</code> now use dimensionless quantities with <code>ranged_representation</code> as <code>rep</code></li>
|
|
<li>feat: HEP system support added (thanks <a href="https://github.com/RalphSteinhagen">@RalphSteinhagen</a>)</li>
|
|
<li>feat: <code>floor()</code>, <code>ceil()</code>, and <code>round()</code> support added (thanks <a href="https://github.com/hofbi">@hofbi</a>)</li>
|
|
<li>feat: <code>std::format</code> support for compliant compilers added</li>
|
|
<li>feat: conversion helpers from <code>mp-units</code> to <code>std::chrono</code> types added</li>
|
|
<li>feat: math functions can now be safely used with user-defined types</li>
|
|
<li>feat: conversion from <code>quantity_point</code> to <code>std::chrono::time_point</code> added</li>
|
|
<li>feat: <code>nautical_mile_per_hour</code> and <code>knot</code> added to <code>si::international</code> system</li>
|
|
<li>(!) fix: add <code>quantity_point::origin</code>, like <code>std::chrono::time_point::clock</code></li>
|
|
<li>fix: enable any prefixes for most of the named units (beside those that use prefixes already)</li>
|
|
<li>fix: <code>hectare</code> definition fixed to be a prefixed version of <code>are</code> + other units</li>
|
|
<li>fix: account for different dimensions in <code>quantity_point_cast</code>'s constraint</li>
|
|
<li>fix: output stream operator now properly handles state</li>
|
|
<li>fix: <code>fmt</code> algorithms were overconstrained with <code>forward_iterator</code></li>
|
|
<li>fix: CTAD for aliases fixed</li>
|
|
<li>fix: <code>derived_ratio</code> calculation</li>
|
|
<li>fix: <code>fill_t</code> assignment operator fixed</li>
|
|
<li>fix: improve downcast mode off</li>
|
|
<li>fix: <code>radioactivity</code> header compilation fixed</li>
|
|
<li>fix: <code>si::hep::dim_momentum</code> duplicated definition fixed</li>
|
|
<li>fix: <code>fps</code> can now coexist with <code>international</code> system</li>
|
|
<li>fix: public headers fixed to be standalone</li>
|
|
<li>test: standalone public headers tests added</li>
|
|
<li>(!) build: CMake generator in Conan is no longer obtained from an environment variable</li>
|
|
<li>(!) build: Required Conan version bumped to 1.48</li>
|
|
<li>(!) build: Conan 1.48 does not set <code>CMAKE_BUILD_TYPE</code> in the <code>conan_toolchain.cmake</code> anymore</li>
|
|
<li>build: AppleClang 13 support added (thanks <a href="https://github.com/fdischner">@fdischner</a>)</li>
|
|
<li>build: most of the <code>conanfile.py</code> refactored to be Conan 2.0 ready</li>
|
|
<li>build: <code>validate()</code> replaced with <code>configure()</code> to raise errors during <code>conan install</code> in Conan 1.X</li>
|
|
<li>build: minimum Conan version changed to 1.40</li>
|
|
<li>build: <code>linear-algebra</code> Conan repo is no needed anymore</li>
|
|
<li>build: Gitpod support added</li>
|
|
<li>build: clang-format-15 support added</li>
|
|
<li>build: export config to local build (#322)</li>
|
|
<li>build: fix export name of <code>mp-units-system</code></li>
|
|
<li>build: fmt updated to 8.0.1</li>
|
|
<li>build: gsl-lite updated to 0.40.0</li>
|
|
<li>build: catch2 updated to 2.13.9</li>
|
|
<li>build: doxygen updated to 1.9.4</li>
|
|
<li>build: linear_algebra/0.7.0 switched to wg21-linear_algebra/0.7.2</li>
|
|
<li>ci: VS2022, gcc-11, clang-13, clang-14, and AppleClang 13 support added</li>
|
|
<li>ci: pre-commit support added (thanks <a href="https://github.com/hofbi">@hofbi</a>)</li>
|
|
<li>docs: Project documentation updated</li>
|
|
<li>docs: <code>CITATION.cff</code> file added</li>
|
|
<li>docs: <code>CONTRIBUTING.md</code> updated</li>
|
|
</ul>
|
|
<h3 id="0.7.0">0.7.0 <small>May 11, 2021</small><a class="headerlink" href="#0.7.0" title="Permanent link">¶</a></h3>
|
|
<ul>
|
|
<li>(!) refactor: <code>ScalableNumber</code> renamed to <code>Representation</code></li>
|
|
<li>(!) refactor: output stream operators moved to the <code>units/quantity_io.h</code> header file</li>
|
|
<li>(!) refactor: Refactored the library file tree</li>
|
|
<li>(!) refactor: <code>quantity::count()</code> renamed to <code>quantity::number()</code></li>
|
|
<li>(!) refactor: <code>data</code> system renamed to <code>isq::iec80000</code> (quantity names renamed too)</li>
|
|
<li>(!) refactor: <code>*deduced_unit</code> renamed to <code>*derived_unit</code></li>
|
|
<li>(!) refactor: got rid of a <code>noble_derived_unit</code></li>
|
|
<li>refactor: quantity (kind) point updated to reflect latest changes to <code>quantity</code></li>
|
|
<li>refactor: basic concepts, <code>quantity</code> and <code>quantity_cast</code> refactored</li>
|
|
<li>refactor: <code>abs()</code> definition refactored to be more explicit about the return type</li>
|
|
<li>feat: quantity (point) kind support added (thanks <a href="https://github.com/johelegp">@johelegp</a>)</li>
|
|
<li>feat: quantity references support added (thanks <a href="https://github.com/johelegp">@johelegp</a>)</li>
|
|
<li>feat: quantity aliases support addded</li>
|
|
<li>feat: interoperability with <code>std::chrono::duration</code> and other units libraries</li>
|
|
<li>feat: CTAD for dimensionless quantity added</li>
|
|
<li>feat: <code>modulation_rate</code> support added (thanks <a href="https://github.com/go2sh">@go2sh</a>)</li>
|
|
<li>feat: SI prefixes for <code>isq::iec80000</code> support added (thanks <a href="https://github.com/go2sh">@go2sh</a>)</li>
|
|
<li>feat: a possibility to disable quantity UDLs support with <code>UNITS_NO_LITERALS</code> preprocessor define</li>
|
|
<li>feat: a support to define ISQ derived dimensions in terms of different number or order of components</li>
|
|
<li>perf: preconditions check do not influence the runtime performance of a Release build</li>
|
|
<li>perf: <code>quantity_cast()</code> generates less assembly instructions</li>
|
|
<li>perf: temporary string creation removed from <code>quantity::op<<()</code></li>
|
|
<li>perf: value initialization for quantity value removed (left with a default initialization)</li>
|
|
<li>perf: limited the <code>equivalent</code> trait usage</li>
|
|
<li>perf: limited the C++ Standard Library headers usage</li>
|
|
<li>perf: rvalue references support added for constructors and getters</li>
|
|
<li>(!) fix: <code>exp()</code> has sense only for dimensionless quantities</li>
|
|
<li>(!) fix: <code>dim_torque</code> now properly divides by an angle (instead of multiply) + default unit name change</li>
|
|
<li>fix: quantity's operators fixed to behave like the underlying types do</li>
|
|
<li>fix: <code>quantity_cast()</code> fixed to work correctly with representation types not convertible from <code>std::intmax_t</code></li>
|
|
<li>fix: ambiguous case for empty type list resolved</li>
|
|
<li>fix: downcasting facility for non-default-constructible types</li>
|
|
<li>fix: restore user-warnings within the library implementation</li>
|
|
<li>fix: the text symbol of <code>foot_pound_force</code> and <code>foot_pound_force_per_second</code></li>
|
|
<li>fix: quantity modulo arithmetics fixed</li>
|
|
<li>(!) build: Conan testing version is now hosted on <a href="https://mpusz.jfrog.io/ui/packages/conan:%2F%2Fmp-units">Artifactory</a></li>
|
|
<li>(!) build: Linear Algebra is now hosted on its <a href="https://twonington.jfrog.io/artifactory/api/conan/conan-oss">Artifactory</a></li>
|
|
<li>(!) build: <code>BUILD_DOCS</code> CMake option renamed to <code>UNITS_BUILD_DOCS</code></li>
|
|
<li>build: doxygen updated to 1.8.20</li>
|
|
<li>build: catch2 updated to 2.13.4</li>
|
|
<li>build: fmt updated to 7.1.3</li>
|
|
<li>build: ms-gsl replaced with gsl-lite/0.38.0</li>
|
|
<li>build: Conan generator switched to <code>cmake_find_package_multi</code></li>
|
|
<li>build: Conan CMakeToolchain support added</li>
|
|
<li>build: CMake scripts cleanup</li>
|
|
<li>build: ccache support added</li>
|
|
<li>ci: CI switched from Travis CI to GitHub Actions</li>
|
|
</ul>
|
|
<h3 id="0.6.0">0.6.0 <small>September 13, 2020</small><a class="headerlink" href="#0.6.0" title="Permanent link">¶</a></h3>
|
|
<ul>
|
|
<li>feat: <code>quantity_point</code> support added (thanks <a href="https://github.com/johelegp">@johelegp</a>)</li>
|
|
<li>feat: Added angle as SI base dimension (thanks <a href="https://github.com/kwikius">@kwikius</a>)</li>
|
|
<li>feat: <code>si::angular_velocity</code> support added (thanks <a href="https://github.com/mikeford3">@mikeford3</a>)</li>
|
|
<li>feat: FPS system added (thanks <a href="https://github.com/mikeford3">@mikeford3</a>)</li>
|
|
<li>feat: Added support for mathematical function <code>exp(quantity)</code></li>
|
|
<li>feat: Localization support for text output added (thanks <a href="https://github.com/rbrugo">@rbrugo</a>)</li>
|
|
<li>feat: Added STL random number distribution wrappers (thanks <a href="https://github.com/yasamoka">@yasamoka</a>)</li>
|
|
<li>(!) refactor: Refactored and cleaned up the library file tree</li>
|
|
<li>(!) refactor: <code>q_*</code> UDL renamed to <code>_q_*</code></li>
|
|
<li>(!) refactor: UDLs with "per" in name renamed from <code>*p*</code> to <code>*_per_*</code></li>
|
|
<li>(!) refactor: <code>ratio</code> changed to the NTTP kind</li>
|
|
<li>(!) refactor: <code>exp</code> and <code>Exp</code> renamed to <code>exponent</code> and <code>Exponent</code></li>
|
|
<li>(!) refactor: <code>Scalar</code> concept renamed to <code>ScalableNumber</code></li>
|
|
<li>(!) refactor: Dimensionless quantities redesigned to be of a <code>quantity</code> type</li>
|
|
<li>refactor: <code>math.h</code> function signatures refactored to use a <code>Quantity</code> concept (thanks <a href="https://github.com/kwikius">@kwikius</a>)</li>
|
|
<li>refactor: <code>[[nodiscard]]</code> added to many functions</li>
|
|
<li>fix: <code>si::day</code> unit symbol fixed to <code>d</code> (thanks <a href="https://github.com/komputerwiz">@komputerwiz</a>)</li>
|
|
<li>fix: <code>si::mole</code> unit symbol fixed to <code>mol</code> (thanks <a href="https://github.com/mikeford3">@mikeford3</a>)</li>
|
|
<li>(!) build: gcc-9 is no longer supported (at least gcc-10 is required)</li>
|
|
<li>build: Visual Studio 16.7 support added</li>
|
|
<li>build: linear_algebra updated to 0.7.0/stable</li>
|
|
<li>build: fmt updated to 7.0.3</li>
|
|
<li>build: range-v3 updated to 0.11.0</li>
|
|
<li>build: catch2 updated to 2.13.0</li>
|
|
<li>build: doxygen updated to 1.8.18</li>
|
|
<li>build: ms-gsl 3.1.0 dependency added</li>
|
|
<li>build: Removed the dependency on a git submodule with common CMake scripts</li>
|
|
</ul>
|
|
<h3 id="0.5.0">0.5.0 <small>May 17, 2020</small><a class="headerlink" href="#0.5.0" title="Permanent link">¶</a></h3>
|
|
<ul>
|
|
<li>Major refactoring and rewrite of the library</li>
|
|
<li>Units are now independent from dimensions</li>
|
|
<li>Dimensions now depend on units (base or coherent units are provided in a class template)</li>
|
|
<li>Quantity gets a Dimension template parameter again (as unit does not provide information about
|
|
its dimension anymore)</li>
|
|
<li>Spaceship operator support added</li>
|
|
<li>Added official CGS system support</li>
|
|
<li>Added official data information system support</li>
|
|
<li>Repository file tree cleanup</li>
|
|
<li><code>ratio</code> refactored to contain <code>Exp</code> template parameter (thanks a lot <a href="https://github.com/oschonrock">@oschonrock</a>!)</li>
|
|
<li>SI fundamental constants added</li>
|
|
<li><code>q_</code> prefix applied to all the UDLs (thanks <a href="https://github.com/kwikius">@kwikius</a>)</li>
|
|
<li><code>unknown_unit</code> renamed to <code>unknown_coherent_unit</code></li>
|
|
<li>Project documentation greatly extended and switched to Sphinx</li>
|
|
<li>A few more usage examples added</li>
|
|
<li>ASCII-only output support added (thanks <a href="https://github.com/yasamoka">@yasamoka</a>)</li>
|
|
<li>Representation values formatting extended (thanks <a href="https://github.com/rbrugo">@rbrugo</a>)</li>
|
|
<li>Output streams formatting support added</li>
|
|
<li>Linear algebra from <code>std::experimental::math</code> support added</li>
|
|
<li>Named SI units and their dimensions added (thanks <a href="https://github.com/rbrugo">@rbrugo</a></li>
|
|
<li>libfmt updated to 6.2.0</li>
|
|
<li>Added absolute functions and epsilon to math.h (thanks <a href="https://github.com/mikeford3">@mikeford3</a>)</li>
|
|
<li>Added a lot of prefixes to named units and introduced <code>alias_unit</code> (thanks <a href="https://github.com/yasamoka">@yasamoka</a>)</li>
|
|
<li>Linking with Conan targets only when they exists (<a href="https://github.com/mpusz/units/issues/98">#98</a>)</li>
|
|
<li>All physical dimensions and units put into <code>physical</code> namespace</li>
|
|
<li>CMake improvements</li>
|
|
<li>Velocity renamed to speed</li>
|
|
</ul>
|
|
<p>Many thanks to GitHub users <a href="https://github.com/oschonrock">@oschonrock</a>,
|
|
<a href="https://github.com/kwikius">@kwikius</a>, and <a href="https://github.com/i-ky">@i-ky</a> for their support
|
|
in drafting a new library design.</p>
|
|
<h3 id="0.4.0">0.4.0 <small>Nov 17, 2019</small><a class="headerlink" href="#0.4.0" title="Permanent link">¶</a></h3>
|
|
<ul>
|
|
<li>Support for derived dimensions in <code>exp</code> added</li>
|
|
<li>Added <code>pow()</code> and <code>sqrt()</code> operations on quantities</li>
|
|
<li><code>units</code> removed from a <code>std::experimental</code> namespace</li>
|
|
<li>Downcasting facility refactored so the user does not have to write the boilerplate code anymore</li>
|
|
<li>From now on base dimensions should inherit from <code>base_dimension</code> class template</li>
|
|
<li>Added unit symbols definitions to <code>base_dimension</code> and derived units</li>
|
|
<li>Added support for <code>operator<<</code> on <code>quantity</code></li>
|
|
<li><code>fmt</code> support added</li>
|
|
<li>Derived unit factory helpers refactored</li>
|
|
<li>Refactored the way prefixed units are defined</li>
|
|
</ul>
|
|
<h3 id="0.3.1">0.3.1 <small>Sep 18, 2019</small><a class="headerlink" href="#0.3.1" title="Permanent link">¶</a></h3>
|
|
<ul>
|
|
<li>cmcstl2 dependency changed to range-v3 0.9.1</li>
|
|
</ul>
|
|
<h3 id="0.3.0">0.3.0 <small>Sep 16, 2019</small><a class="headerlink" href="#0.3.0" title="Permanent link">¶</a></h3>
|
|
<ul>
|
|
<li>The design as described on CppCon 2019 talk (<a href="https://youtu.be/0YW6yxkdhlU">https://youtu.be/0YW6yxkdhlU</a>)</li>
|
|
<li>Applied the feedback from the Cologne evening session</li>
|
|
<li><code>upcasting_traits</code> renamed to <code>downcasting_traits</code></li>
|
|
<li><code>Dimension</code> template parameter removed from quantity</li>
|
|
<li><code>units</code> moved to a <code>std::experimental</code> namespace</li>
|
|
<li>Leading underscore prefix removed from UDLs</li>
|
|
<li>Added a few more derived dimensions</li>
|
|
<li><code>meter</code> renamed to <code>metre</code></li>
|
|
<li>Missing <code>operator*</code> added</li>
|
|
<li>Predefined dimensions moved to a dedicated directory</li>
|
|
<li><code>dimension_</code> prefix removed from names of derived dimensions</li>
|
|
<li>cmcstl2 library updated to 2019.09.19</li>
|
|
<li><code>base_dimension</code> is a value provided as <code>const&</code> to the <code>exp</code> type</li>
|
|
<li>integrated with Compiler Explorer</li>
|
|
<li>gsl-lite dependency removed</li>
|
|
<li>Fractional dimension exponents support added</li>
|
|
<li><code>QuantityOf</code> concept introduced</li>
|
|
<li><code>quantity_cast<U, Rep>()</code> support added</li>
|
|
</ul>
|
|
<h3 id="0.2.0">0.2.0 <small>July 18, 2019</small><a class="headerlink" href="#0.2.0" title="Permanent link">¶</a></h3>
|
|
<ul>
|
|
<li>The design as described on C++Now 2019 talk (<a href="https://youtu.be/wKchCktZPHU">https://youtu.be/wKchCktZPHU</a>)</li>
|
|
<li>Added C++20 features supported by gcc-9.1 (<code>std::remove_cvref_t</code>, down with typename, <code>std::type_identity</code>)</li>
|
|
<li>Compile-time performance optimizations (<code>type_list</code>, <code>common_ratio</code>, <code>ratio</code>, <code>conditional_t</code>)</li>
|
|
</ul>
|
|
<h3 id="0.1.0">0.1.0 <small>May 18, 2019</small><a class="headerlink" href="#0.1.0" title="Permanent link">¶</a></h3>
|
|
<ul>
|
|
<li>Initial library release</li>
|
|
<li>Begin semantic versioning</li>
|
|
<li>The last version to work with gcc-8</li>
|
|
</ul>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</article>
|
|
</div>
|
|
|
|
|
|
<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
|
|
</div>
|
|
|
|
<button type="button" class="md-top md-icon" data-md-component="top" hidden>
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8v12Z"/></svg>
|
|
Back to top
|
|
</button>
|
|
|
|
</main>
|
|
|
|
<footer class="md-footer">
|
|
|
|
|
|
|
|
<nav class="md-footer__inner md-grid" aria-label="Footer" >
|
|
|
|
|
|
<a href="../blog/archive/2023/" class="md-footer__link md-footer__link--prev" aria-label="Previous: 2023">
|
|
<div class="md-footer__button md-icon">
|
|
|
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12Z"/></svg>
|
|
</div>
|
|
<div class="md-footer__title">
|
|
<span class="md-footer__direction">
|
|
Previous
|
|
</span>
|
|
<div class="md-ellipsis">
|
|
2023
|
|
</div>
|
|
</div>
|
|
</a>
|
|
|
|
|
|
</nav>
|
|
|
|
|
|
<div class="md-footer-meta md-typeset">
|
|
<div class="md-footer-meta__inner md-grid">
|
|
<div class="md-copyright">
|
|
|
|
<div class="md-copyright__highlight">
|
|
Copyright © 2018-2023 Mateusz Pusz
|
|
</div>
|
|
|
|
|
|
Made with
|
|
<a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
|
|
Material for MkDocs
|
|
</a>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</footer>
|
|
|
|
</div>
|
|
<div class="md-dialog" data-md-component="dialog">
|
|
<div class="md-dialog__inner md-typeset"></div>
|
|
</div>
|
|
|
|
|
|
<script id="__config" type="application/json">{"base": "..", "features": ["content.action.edit", "content.action.view", "content.code.annotate", "content.code.copy", "navigation.indexes", "navigation.tabs", "navigation.footer", "navigation.top", "search.highlight", "search.share", "search.suggest", "toc.follow", "toc.integrate"], "search": "../assets/javascripts/workers/search.b8dbb3d2.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": {"provider": "mike"}}</script>
|
|
|
|
|
|
<script src="../assets/javascripts/bundle.ad660dcc.min.js"></script>
|
|
|
|
<script src="../javascripts/mathjax.js"></script>
|
|
|
|
<script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
|
|
|
|
<script src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
|
|
|
|
|
|
</body>
|
|
</html> |