<?xml version="1.0" encoding="UTF-8"?>
<mrdocs xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://mrdocs.com/docs/mrdocs/master/_attachments/schemas/generators/mrdocs.rng">
<namespace>
  <anchor>index</anchor>
  <kind>namespace</kind>
  <id>4ZrjxJnU1LA5xSyrWMNuXTvSYKwt</id>
  <extraction>regular</extraction>
  <members>
    <namespaces>4Mr2JeTsyczjdded6w2dFkYVQSuM 2qo2BEJhYin8Wk3HYFXENwuXWSUe 2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</namespaces>
    <typedefs>otMKX5K21ws6HNQdLF1WxoZ6eaj 3q8wMY9qgurN6bxfeM1p7Frivch6 2bboo9isyVejScp9wfZEbVTNGiFk 33SNKeTk5bQyQFqMXGvAvLxDNrKZ 41obEE6Er6mo1NeJb4dH6YDasBbb TkY7FsugPVk6wnAhVptN2HFaUf4 3wBW4taBrSaSm4cE3jG5dedxbikQ 33hpLzSGuSX59WtwA9AjxEb2V9x4 L9EzVjt1tJ3urg5EuRbd8Qno1NC 22QREmHybN37zRBVoWcbcw3YBSRP zX37f36ykR1kXWo6K3MSc9dfYLV jeya9rKYzZS4QDRLJfpRGsDgrwp 2HajvNXzJnNTpBjbwtgpkK8fPdGx 3nZHsqHVAdnjionKMyHFitzHtez X6USzDWePR9gRkX4DUZ11PfjMow 2QrdNTAwvAgZKS48NYJmN5ZojAGy 3VMt99Wp744j4oYDKzuM6GMAkVHe 8cCoHos9Ksw8a44pgsPE9B3kdyo w7yWEPLwtMpd5GnNHsV5ASwVxkX 9dKgjCpBHJzdNem8yS7cYHGEi1S enwWZFN2wfrW91K9GsMrvTw5eKa 2tsUc2es9auoK5sHxz7Dn97FYmUN</typedefs>
    <records>29GwPtZpZfMaUFHNVeij8XCQFCfm</records>
  </members>
</namespace>
<namespace>
  <name>mp_units</name>
  <anchor>mp_units</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/bits/constexpr_format.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/constexpr_format.h</sourcePath>
        <lineNumber>36</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/constexpr_math.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/constexpr_math.h</sourcePath>
        <lineNumber>40</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/double_width_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/double_width_int.h</sourcePath>
        <lineNumber>41</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/fixed_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/fixed_point.h</sourcePath>
        <lineNumber>50</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/get_associated_quantity.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/get_associated_quantity.h</sourcePath>
        <lineNumber>30</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/hacks.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/hacks.h</sourcePath>
        <lineNumber>188</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/int_power.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/int_power.h</sourcePath>
        <lineNumber>38</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/ostream.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/ostream.h</sourcePath>
        <lineNumber>39</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/quantity_spec_conversion_impl.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/quantity_spec_conversion_impl.h</sourcePath>
        <lineNumber>47</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/quantity_spec_equation_conversion.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/quantity_spec_equation_conversion.h</sourcePath>
        <lineNumber>53</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/quantity_spec_hierarchy.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/quantity_spec_hierarchy.h</sourcePath>
        <lineNumber>35</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/quantity_spec_hierarchy_conversion.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/quantity_spec_hierarchy_conversion.h</sourcePath>
        <lineNumber>47</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/ratio.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/ratio.h</sourcePath>
        <lineNumber>42</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/sudo_cast.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/sudo_cast.h</sourcePath>
        <lineNumber>41</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/text_tools.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/text_tools.h</sourcePath>
        <lineNumber>43</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/type_list.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/type_list.h</sourcePath>
        <lineNumber>40</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/unit_conversion_impl.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/unit_conversion_impl.h</sourcePath>
        <lineNumber>48</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/unit_magnitude.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/unit_magnitude.h</sourcePath>
        <lineNumber>53</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/unsatisfied.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/unsatisfied.h</sourcePath>
        <lineNumber>40</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/ext/algorithm.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/algorithm.h</sourcePath>
        <lineNumber>43</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>58</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>65</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>191</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/ext/inplace_vector.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/inplace_vector.h</sourcePath>
        <lineNumber>47</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/ext/prime.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/prime.h</sourcePath>
        <lineNumber>46</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/ext/type_name.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/type_name.h</sourcePath>
        <lineNumber>18</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/ext/type_traits.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
        <lineNumber>37</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/compare.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/compare.h</sourcePath>
        <lineNumber>37</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/construction_helpers.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/construction_helpers.h</sourcePath>
        <lineNumber>38</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>58</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/dimension.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
        <lineNumber>56</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/dimension_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/dimension_concepts.h</sourcePath>
        <lineNumber>31</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/point_origin_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/point_origin_concepts.h</sourcePath>
        <lineNumber>29</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
        <lineNumber>66</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_cast.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_cast.h</sourcePath>
        <lineNumber>41</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_character.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
        <lineNumber>41</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_concepts.h</sourcePath>
        <lineNumber>32</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
        <lineNumber>48</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_point_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point_concepts.h</sourcePath>
        <lineNumber>34</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_spec_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_concepts.h</sourcePath>
        <lineNumber>30</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_spec_conversion.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_conversion.h</sourcePath>
        <lineNumber>31</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>52</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_traits.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_traits.h</sourcePath>
        <lineNumber>31</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/reference.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
        <lineNumber>42</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/reference_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/reference_concepts.h</sourcePath>
        <lineNumber>31</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/representation_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/representation_concepts.h</sourcePath>
        <lineNumber>48</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/rounding.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/rounding.h</sourcePath>
        <lineNumber>38</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/scaling.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/scaling.h</sourcePath>
        <lineNumber>44</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>45</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
        <lineNumber>41</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_concepts.h</sourcePath>
        <lineNumber>33</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_conversion.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
        <lineNumber>35</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>48</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_magnitude.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_magnitude.h</sourcePath>
        <lineNumber>41</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_magnitude_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_magnitude_concepts.h</sourcePath>
        <lineNumber>39</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_symbol_formatting.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_symbol_formatting.h</sourcePath>
        <lineNumber>39</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_text.h</sourcePath>
        <lineNumber>59</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/value_cast.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/value_cast.h</sourcePath>
        <lineNumber>45</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/vector_components.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/vector_components.h</sourcePath>
        <lineNumber>44</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/math.h</shortPath>
        <sourcePath>src/core/include/mp-units/math.h</sourcePath>
        <lineNumber>52</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/overflow_policies.h</shortPath>
        <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
        <lineNumber>38</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/utility/constrained.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
        <lineNumber>50</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>75</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/utility/representation.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/representation.h</sourcePath>
        <lineNumber>35</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>53</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/utility/unspecified.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/unspecified.h</sourcePath>
        <lineNumber>38</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>namespace</kind>
  <id>2qo2BEJhYin8Wk3HYFXENwuXWSUe</id>
  <extraction>regular</extraction>
  <parent>4ZrjxJnU1LA5xSyrWMNuXTvSYKwt</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The Measurement Library</literal>
        </text>
      </children>
    </brief>
  </doc>
  <members>
    <namespaces>2iqJ4TKZEJSLEpPaokwu56qTtgmk 2HniVS23jfsJhnimKmHvULUT12dS</namespaces>
    <typedefs>2Hzo8aceu5rHGqWKY1MKnC92NdXE 2M62fJpTrurZhYXceGEhUTKbuoqL 4FJnHCB9VAAzQgxJdRPNFtwnAPAb 3TsCZmEoDMsbhtvmWPs8G334BaxT 2yYpLRghFNWdXZRaYM8MopiJ2ZKR EUR8d61S1WxEe8azn8ugmzAGxca 3sKp9ysGAz16gSBzpBHMh3gd9ayH 4Wu2rKCrbh8vvd7KU7rvYRQMeYWY 2J9aWTqQfNznqnGkUYYYdzuDP3wr KB5qmriszBYfdwuVVgPjvA4ukKZ 47yY182R2Xiu3jP6e1AR9PwpsXNp j4C6UbTUKzUxiF5DoXhaazh91po 4LnLqHgYvC6eywZZVZ419SfGLGkQ</typedefs>
    <records>UMCNgaD8fdCfJnTyLd9quGNfNBG yhSsxqE9awUUVFfoJoqVwu61Svr 2vobs4J4rwmVnn95EApdmvEbr3sT F87UYsChLcb5FFLVJpVGe3a7XxT 4ALaVjPP3BUu52Psizu1othAbYbT 2KyQjUPzytHKP8Rrm7388dZywdKJ KfMfbQM9UguA34Fr3YaACuPr3pL Wzysgh1aqMdibSoHMsoDoeCtyG9 3r2ngEAre3tNwAJJSxdfdGZbxwJY DUmhPswjMzqGF1ZTL1bMXZ94fcg rCAt4uvUxE3NhJXySTXTCmMyuri 2YoEGz9vjM3Zjb4osDptnukQH2cG 2SWT9ZoKRYv7KojpZNV4wf8idE7X 2PgZ2ZAgs8odUE9ySmHXm77T49w4 T4Fpb4JMnAKkmBrSSeJvUg59YBc 4QbdSnSogncVTvJJWScyAvQBwvux 2MB3ehy1cfTaE6w5x5U3P5G8RCQo 17kXrMsiY1yJcrB1zmdHp8jnWh8 4482XPobfvqd7xLra3C2495VhdCm 43kLVy1RA4toKqpt8TY9qUMqN1jY jhj8wKR14Dfh4jBiozwJFmDUrsE 3GGsrCSpdRTxbMbwyV3LUcRWRD3D b9W2kNwcNGyZJuRsJx8ovpcKdiv CsrbNHa6x2nHW1vFzf2S3bL5Jdi 4JCvEDranCheiYkx4ExaEFpokXvS 2Zdqv8vGA7ZVSgQR4tZDVVmk2Wdc 2KfW3gpujut36NQC177m9o8qx4cT 4BvRV3pmqNj9BKRHHREj2rcQbQ91 3r2vXYd3SPieRgasCwgJtKMR29CX 2Hqo1c6uBRBLNip9ef8ZygpVS8wN 4VpMfLu1y4pCm1ps5iazK1GsLpf4 4U9y2c4wP15dfgqAjSKnFT4PTru6 3iFwv1HXbkL2pmgPELDF83QeDUnN KZUH8bTAWtoaX1qhNL2CWybfDLA UTVZ53kg1TiKjeXG4a7T78rgCdF 3kyvLAhMrQDeszVe2Z5nAL4Bkup8 3XviX2iX7feybFxq4TBPUBqi9P4Y 2PksRvMJZhCxhDF9TqFckTUnAVKW 3ALeFiFGBTQnjRanHVtUdmKCHnUG 3Zru4uFNesQUfs73uWf8EGaCbWDn MwVYJCwUkJmbMGxsVRQeFBD62sg LEdUDoZpqttStUmCqXAEr1XZtHB 2Hv491FBzUHufEgtmwfLXcRMayVd vwZNR3M7EB8zgNmAuTuHFG26rMF 2yjx1vnc5z9QvHyxt3APwaSpNiv8 3tAPX4gKmpLdoKTPusVMGYWHiEK4 34sGDDhSXkFmzrFyrPzchL5XwvaZ 3KixrkcHQJsgacRbKW4sykEs3AEe 3EhxB36QiQjQ48qhgQyD2GFTKQw5 3UwtV51GUEtJ8ECZKzaBygDyBV2w 3Zha3W3yCHH3RyExYEysLsT6WVhe 2MBctGnrEPVkePZq8UUyHyAZBFv6 KvQe7W4psngLdA1A2RmypBVkB34 3VNVqctAij8WiPwQ1AWB2ihbYR8S haAP4DDwZQWPLv34Z1n91Pnks96 pa9cvciPHvw1w8XJp7nce3mZ12W kk8Spzk6BpESAxq6f8akDsWxShd 3j7uXQsF3UyM483z1vK71s11MxHL 32CvsHWTsmMFS3CDAwu9iGBtJJah 3tW6B9CGr5gBq89ReHKFC4t3T82j 2k742HvoWT3GgZMYfwCeYJfUD2VQ 2hEGsYDLNBjUg6rzP46htufm2v3p 37Hni5GLotfWzebVD7vLMqtadBws 3meCZ8xJrDYoXxn83Jp1BiVHzMNw i4mN4SDVW1sC1TDABKsaGtziHbz 2VSEeX5pPfQQcYBtyEpWPPwzChuv 2JsunG93mWGvhraHopNZ5RNNVJUP MzzebNBtY66pJzhCVwFPzYEhhU4 S5HY4fSGyYou41FPP867sdZ5rB2 GF3Tm818AtZ6cbEgeA23kpWqBqq</records>
    <enums>p64pSthzNphpzitvMwpEkwsvGnj 3rPzTGJwW8XixHbnVJN6sJFFPksg NDjCLK6Czy4KDn8XVDNpzkhL9BM nJoSptYF9go7dPKS8BAfAUiD1bP 4JGzXjLwhZhRJT4Ck7pdiZGJvAtQ BtkpK1Lsm8NaBA7ZDNQr6mVq5Tx</enums>
    <functions>HrKEdkrfR2txpFyLov2VxsioqTN 34tTQidX6id7wgchZkJ2WZz4iANE 26MLjFzGTFbUMz64BXoNSXCCriir 2eCs8hXphxyzxgQz2GcLDiDd8LyK 384Fo8ySDfoudMQx2Hvk4djF3Uaj PFjcwUXVHzQMT9JijgUJxoQ4KFt 4NQEgxsg87PaCnHkxkHiEKzTi7sn 21ee1NG4LHf7vYX1LRzekigZmA5F 387eL9wD7fqA1x7VuAXCjwGU9fn2 2kznZSR8SE42zHR3WTAdNWLskyVm 2tdZ1AAwiKTs8KPywV3pUvmUD5sG rM4PrJXjpBDLm6fsu6BMfmwMbYC 2FN1w8efFDmehLaRQtnnCrukc3ve 25U8B459vngPxFgr5MDJ2PqGz1YV 3hAvk6tbnywrx6RrVXuU7NT8aeo6 2mVQGbDNbwfBKeP9T4UQjYAekR4Z 3Ms5NC3kKDoRzwtiNxtVcWrZAzXm qqfEkb5D6zvPRLQGQS6YHKPjpNj 2wbGUGn7UfY93CpPnomG6ADssMHm 26kyM8uKrZcfcRZkWpzTy7AvfGVS 31CkXCQbx9LGdX3PNf8RbtSLm7Rx 3UrFqLKZpsEZm623Z2qtPRDuVms8 mgtS7ifEjC6Gfacwm5qPWQ5M2Sc 2TkUhiLkvqQVcP7hywevpSkpR45n 4EWkJkF8hMYBRJUUaR1NaCCERr1J FrEgdz3tkofK6b8xMWwmb8GdqqS 8KVbpC6FpfXCbsmqDDPvuiknRGW gL8E2AxzhSpL5g4ba8PX5FXYhSp RHAvDx7WTA94zDysotYY7hqK16b 4KzrbYRMcBZgXdNt9cVLatdqRebh 3RiLzwyytyUgeQRDBxbHcSyQarYB SPXNHyJ2GYKMPCnJFSNuAzytdz2 4D88S52sTEoE5zrQPnWcXf5mkorp eWvQpMUChCHd9VJS44p5duXt5NG 3xZ56Yj5VphqjwHcorce15guk3k 2QB87DxNg9sNwVxDZrtMyLyEPXWS 3fnd1Y84H7upPYK9uG7bRfrfZDpF 2vHcgLGWRUMviebhjqbF1XuZ7jMx PP6r19iNqghFPB74V8yrx8raz38 3jqp2wFeNuJSx7EZVgTH69GqRWfb 2xVew8uXnyagoywhJkeoxSbfSvQx eHaYzTDunYac8NNqmWZcDLSCKkY 3UqzWL6jFPAeDBFLNDchRyrw8aDU 1jD4dvqNG89bgFxm96kCqL3mA97 3MMonumi3pM2abo3xo9rnWj9KYXn 4KgZnaFDataWaAxxtenhyF5wCdT1 4tdSwbZym8QcUaANP4zkEzrjz8b 4UQrpzdt3Vgs8AYspTaH7H6Rc5ab 4H8pdkfYVY5qHRLaPo1jHuDgE8Zb KiGjPFqEB4xzKurFj2unqRxcjjz 27p187kmmYWM2brZM5uahihewTsL 3ht9JzqFL3mp4dJNxazYNUcku3L9 v8rg9WykoLedQoXgKxawi1wCUgG 4JoaYBaKCsrLXG7xgAsaVqkK9N4t rfS6pr4PGmhkuUFp3JhSNzFcWEn bGpQTmcVpVMar8cd4rdqjGCcEFj 3PxGaVahysPWH4ULdwCjvPwsGtBA Hm3RJGbL47k8d34w8Joh4c8zGCZ</functions>
    <variables>2MNZoEMpkUw67w2hyRdFFCXqtKRt mF3qmfoLxKv7FAJHnjjnkCe7Lcz 32qrBCEvMbzW4zKqVvJcTWKmg6a2 39sfVBiQRju7zmfoQzqBSfJ4wP5Z 29TFvBQ4BLav1fQXA4fajEma7noF 4KiupGUWXReHg1fSmw2VUaHjXjmy 3tJw95DxxTCcQ1ThtVG6ij7v9Bi1 29Gz8L1R6dJxbQVzd4sGb44DcFQK TNfELqJJa5JXAUE4xTyuaa58urH 45cmjX4pHWyJtuL8dwdoB1MpEvcr 2FyZqWUd1u3Gw2yp3izeoGmaq4YJ 3U4zaQxtcn1GbEMeWs4SX3d9vnKE 2yXjzq78SsvzhygLa4Mr4yWC8pm3 2WgpuWZnD8KYsTNoUApcZ3R7uxeb 2LdEXrAUap58sS72vKxjaPhwH6LZ 3fdMMKr3p4DT1eQn9WmYrkMRDMVK K1WbBtRqsfpWQLNorU716mA1nr1 31ELxnmmay27GnJurh9W3HqxicAd NpXbppwUg4zTUPy8JsDpCYi1EaQ 3nzccgBXH5LYQbXfRThnDcQCKtGH 81qNRXQDJ8WaBWwARLf8Yj18VYu 421q9iRdZJ3Zv7oJ7Sszre5u29n7 fJrsSvUwAurVpVCcNDxTUP7UPrg jkctn2VUXG61LNNoGkhPD5ywJSv 2y8zYScRPPyiaJJ4diNVENTCUPGm 3jUubaDc1h5MDebpKUN2yE1XDz8r 47UFrkHSFY4VJzqeSAP6QiJ3Ty3k 2ssoVC7xoRRnU91ZRizFXLwhiWo hvDE2ksJ3JR9GA2chCLQZBYHSYt 2dTj4QRB75caBtHfhCTorEKNk7RX 4CQftFWdXb2iR5J64x5LStnX872x 46FCu6CLA4DBFH2FejLpnJagfwMV 2MSP6Q5UkifWCXv5iES6i7ZrhqFX 2zx963upErE2NKwB6xCFtP7PG2AJ 2jYKCXKWTJF6UqY4Me4nvRSE8Hib 3HkZ5qC9Z5hHLKLpD2KVFaHkzbdA 2p3zALSeM84FUD23WkPaRCWj7nxJ 3PCrsoAC11bzxLtDMKAowQekMdxy 4T54WzyBYogz9mcgy6LeYYCQi8SJ 4DMLK4v8r7M88e43jR2ZqwkmQCob PyQ66nSMYM9mCN8yFi2oZTTCamf 39nbZZqFQdS7b5CrrC4B5a5Mh7G3 42zhpKCyadZyqrKnfPxgvyvECoTQ SVSYVmp8iyCjFLxJKgMNt1xL4QK 2DzXqGPeJwdnb5nwQ5bmKgZrxykG NcWJYTpzaggDQdxaS2ijVetGVfP 3KSdXbzsWGnnxzseWgQv73Ku7LGz 49YqfrB7DrRRUpdNbedrqeMzv7Ks v9T2niLYsB1DPE8tZ1uXFHirDiU 3XnwHNgB3eWws3proz1EdDpE8HyQ 2CdRRBQBVb9qLSXUCgoX2NV7rvxJ 2yq5LFqXNDEeJGxyeKpr3fbF3VNw 2nF1QaEUfUxNrtXVwc8uGZxhwZrP 4URRZBjyq49mE8hfqX92fdvENP2J F74Tj1CvuVVXt7cow1oVtz82kca</variables>
    <concepts>45RhVybzfdGrtM3QeHkKgHVjgXwC 3yTDqTjKCBokFjbu7VA9E2GDxWhv 2UFYWEcA38viiGwDvtBX5fW98cyP 4NoR1GhJWMy7ThNgF4n9Se5DCrUJ 2aXKW9wnyinkHgp4PdNJx1dVcXRf 3WiMu133XMz2yEYikidcGfhQdKEy 3qAeDKNiywNEzCu5QCmwmnFtW2mR 411DKZ7RnmHriQwPqnSswA5Vw2iM 4MKqffEFb9yHWE6YsBxBniqNGjrr 2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz 4VxaiASJtxfgvJLJcnqCwWWudqRp kwCmGN48aj7Jp3frkXvo9RGdBkc VJSR9r38GF59WETTrMJBs2PpmHb 42jHwWWeWPWiTpYJ4Db5oSgbhYb7 3bcNyEwthidxWzg8BreCXz7RN5wq 3Ub6ZdGyQn9xo7UbcSDY6L76yn98 tiiH6MTehoBtfv5fCu7BxYQfaeF YVX6cpM1CYsWUJnza1LHnhh9V9h 2hgf2h226oxP7rRL5kMzBgUFMDVu xKAh8ftVFPPg9yHq2Nj39wmoCFd 2i4tXKX65f73dK9BG19YBaVKZ4Xk</concepts>
    <guides>4T3hrnMess462PNxTNtMdenG9UCt 2bai7FbaaMex8cf5o62LHb9J1cYf 3zeqQ7151vvHP4xWNTKmNFB2SHhW hFqLBYYZxzN2aLa5ULgKpaSTEco 2DxaWqY82yHLfWGJ1qLedk5Cjef4 291jRSrkdwmLhmqwNXiPCHwShFpi 3kuPnrykinfBiDJeN55VK4dfnKZy zTEG4PozDqx8ZVD19iNxC4haTL7 3qCjp4xLtb2hieJDq6ziwfzDEgRv 2MEHhoNaYdMRKXD1J9RbZdtP4pvZ 4VCoXHrj66kKijUz6uM4ybGgAsA8 2gW28gGggKebfbujvx7Mj88R7Ubk SjCEsW8nojeUm5mQv3fP75Q6XPF tS4CSHbMB9XzKkJGe4kb3KZje7a</guides>
  </members>
</namespace>
<namespace>
  <name>detail</name>
  <anchor>detail</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/bits/constexpr_math.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/constexpr_math.h</sourcePath>
        <lineNumber>40</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/double_width_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/double_width_int.h</sourcePath>
        <lineNumber>41</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/fixed_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/fixed_point.h</sourcePath>
        <lineNumber>50</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/get_associated_quantity.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/get_associated_quantity.h</sourcePath>
        <lineNumber>35</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/hacks.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/hacks.h</sourcePath>
        <lineNumber>188</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/int_power.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/int_power.h</sourcePath>
        <lineNumber>38</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/ostream.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/ostream.h</sourcePath>
        <lineNumber>39</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/quantity_spec_conversion_impl.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/quantity_spec_conversion_impl.h</sourcePath>
        <lineNumber>47</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/quantity_spec_equation_conversion.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/quantity_spec_equation_conversion.h</sourcePath>
        <lineNumber>53</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/quantity_spec_hierarchy.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/quantity_spec_hierarchy.h</sourcePath>
        <lineNumber>35</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/quantity_spec_hierarchy_conversion.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/quantity_spec_hierarchy_conversion.h</sourcePath>
        <lineNumber>47</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/ratio.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/ratio.h</sourcePath>
        <lineNumber>42</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/sudo_cast.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/sudo_cast.h</sourcePath>
        <lineNumber>41</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/text_tools.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/text_tools.h</sourcePath>
        <lineNumber>43</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/type_list.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/type_list.h</sourcePath>
        <lineNumber>40</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/unit_conversion_impl.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/unit_conversion_impl.h</sourcePath>
        <lineNumber>48</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/unit_magnitude.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/unit_magnitude.h</sourcePath>
        <lineNumber>53</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/bits/unsatisfied.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/unsatisfied.h</sourcePath>
        <lineNumber>40</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/ext/algorithm.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/algorithm.h</sourcePath>
        <lineNumber>43</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>67</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/ext/inplace_vector.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/inplace_vector.h</sourcePath>
        <lineNumber>47</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/ext/prime.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/prime.h</sourcePath>
        <lineNumber>46</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/ext/type_name.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/type_name.h</sourcePath>
        <lineNumber>18</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/ext/type_traits.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
        <lineNumber>40</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/ext/type_traits.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
        <lineNumber>88</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>60</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>196</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>222</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>248</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>273</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>308</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>357</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>473</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>656</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>741</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
      <location>
        <shortPath>mp-units/framework/dimension.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
        <lineNumber>63</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/dimension.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
        <lineNumber>235</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/dimension.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
        <lineNumber>306</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/dimension_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/dimension_concepts.h</sourcePath>
        <lineNumber>33</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/dimension_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/dimension_concepts.h</sourcePath>
        <lineNumber>51</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/point_origin_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/point_origin_concepts.h</sourcePath>
        <lineNumber>31</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
        <lineNumber>68</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
        <lineNumber>1302</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_concepts.h</sourcePath>
        <lineNumber>37</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_concepts.h</sourcePath>
        <lineNumber>56</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_concepts.h</sourcePath>
        <lineNumber>90</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
        <lineNumber>50</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
        <lineNumber>169</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
        <lineNumber>228</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
        <lineNumber>282</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
        <lineNumber>309</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
        <lineNumber>322</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_point_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point_concepts.h</sourcePath>
        <lineNumber>48</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_point_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point_concepts.h</sourcePath>
        <lineNumber>71</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_point_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point_concepts.h</sourcePath>
        <lineNumber>111</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_point_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point_concepts.h</sourcePath>
        <lineNumber>172</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_spec_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_concepts.h</sourcePath>
        <lineNumber>47</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_spec_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_concepts.h</sourcePath>
        <lineNumber>88</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>70</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>499</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>612</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>701</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>741</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_traits.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_traits.h</sourcePath>
        <lineNumber>33</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/reference.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
        <lineNumber>44</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/reference.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
        <lineNumber>434</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/representation_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/representation_concepts.h</sourcePath>
        <lineNumber>52</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
      <location>
        <shortPath>mp-units/framework/representation_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/representation_concepts.h</sourcePath>
        <lineNumber>138</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
      <location>
        <shortPath>mp-units/framework/representation_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/representation_concepts.h</sourcePath>
        <lineNumber>176</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/representation_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/representation_concepts.h</sourcePath>
        <lineNumber>235</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
      <location>
        <shortPath>mp-units/framework/rounding.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/rounding.h</sourcePath>
        <lineNumber>121</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/scaling.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/scaling.h</sourcePath>
        <lineNumber>46</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>66</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
        <lineNumber>43</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
        <lineNumber>107</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
        <lineNumber>160</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
        <lineNumber>174</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_concepts.h</sourcePath>
        <lineNumber>35</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_concepts.h</sourcePath>
        <lineNumber>87</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>62</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>154</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>173</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>329</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>684</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>733</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_magnitude.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_magnitude.h</sourcePath>
        <lineNumber>139</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_magnitude_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_magnitude_concepts.h</sourcePath>
        <lineNumber>55</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_text.h</sourcePath>
        <lineNumber>81</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_text.h</sourcePath>
        <lineNumber>217</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/value_cast.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/value_cast.h</sourcePath>
        <lineNumber>47</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/vector_components.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/vector_components.h</sourcePath>
        <lineNumber>46</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/vector_components.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/vector_components.h</sourcePath>
        <lineNumber>151</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/overflow_policies.h</shortPath>
        <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
        <lineNumber>222</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>namespace</kind>
  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
  <extraction>implementation-defined</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>//////////// tensor_order ///////////////</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Quantity kind specifier</literal>
        </text>
      </children>
    </brief>
  </doc>
  <members>
    <namespaces>wd3htwxVmgrt5GMABTDAY4qHd6q 4QgmQL7HgFuz5suC8oXQnZ4hyk7N 4SHaht91AyUU5fVuBRK3uM9dQ3Cc WHn6bm5VTgAbNfdBCZ2666jP2hz</namespaces>
    <typedefs>3ftYcM1YZJozKNoBhZc51NtYvLhK 41shz9r5JUEt8JdP4cmahP2ZeN9m</typedefs>
    <records>pGKsEXJ1uhtb16L2uFiDjVhrn6S 2TNPPQfFqVrZWhXttLHd9Xn1wi7Y uw6xXxRxSirRmGxTws6NPyXqZhD 368rhWkkRWxe5iwHzJACVakdyjPC 2dHbdnGLxs7cosxdoWtv7cFy8NMT 2rnVT6uPEtMr4r7uhijJcqBKxXwD 3raCjU4jB2y8P1YRAAwBW8dJiEka 14pWyqnAtWutWMZYD29PVUW3jXu 3qoPTZz1bWB6GY62biYRPERZiQAG 3xJCR6XaSy3cMLNnYgDYEAEBoeJX iZRdx4G8qVDTCA4VTjhxTNkUs55 3zufCLgbP8zf6huPtkn3fh4HQtJd 3bTiX46viNNhtHV4DZbUGCwurK9H 31bkbibbAYnQAQ2N3QBHsFAi2PvR SUDs3XLS8yHmFdRgEnZXYDPRPqk KK9YaxHBuJyB7F2cmbzypn8JYd8 mVBzwj1ZyfbqvPLmrbFHa3mQejq 2T4oYwVAM6kmERwtc2dpxnitdZoS 3fQ2bmpbSPUFA1pnpboFmFN3vkzk 3saBgG69eSBEhVisex6iF7AMzigU 4DhgG6VrVDCNVPKiKJUo5NRHGXZv rrAVBKwDUGZvscAUYiW43p6TNaV 2wJfppQ9L4qpqtAmKkJdGimfBTg9 PJchxsTkLdezWQPwqY6mH6A8yj9 UUcadh6BDMh3tM9didYeTgCbfZb zydBHZiWkNCjaiwDgPvMJMJbMjc 3vmqqZzaHhdZFqizjrzByokgAhr4 2AeuYsb1jMFCeQ8M4bwCfbLBjxp1 2v4DtGJWPQkBf8Jep2MJAmFHbJfQ</records>
    <functions>392Gj8vVtYVY4tWEBZNYa6EDWxHw zvxfem2NUJjo6xT8LnccNPe5XTz 4QtEfXo4mvrxhUENFisDLtghbNYA 2QA7VR9ughC1tW9h8SL1KZatScGE 3VxWxi4ipu5thrmEFRt7TzFLnYce 3aM7d4RZN5c7LPMEnc2GzuXLBaKg 2TGr8bZoPMoAD35S9TKFA18F5j7m 3L3Xura3gv4Pq27hWeMCzoQnyiFD 2W3HgMy3oRaiP7HGMoudSnzmpCaT aT98PEbiAsU7PQuVRGwtCGxT3j5 6faC95BHgme41wZUM7CHSNprpJ7 2R9vL587jvsq9r9YZgW3FZDyqwzm 2Yyi1mcuRHoQzCHPDKgCJ5Ex3VYL 2BLMye2a3M7wNajoHksU2gZSfkFd 4ZZz4dAcGNerrQqUKUrshRtue2NY 3rrSMBbfEsfyKm2WomW786fVjDWL V7yTaVqj8iP4xTQ2wTAbdhMQqrx AEYpUGR5sUWNDtrUWadmPjQYFQx 88sCTPBkUMZkZCz7ZBzndAJjGf3 qeKGzoLD24fP2CwkgNx82bfmiw2</functions>
    <concepts>2LeHToFYu4KtmBngvtbRipYmKBa4 25wwm52Kpr4FqdgtjKe1XMSsvZmV 2x53BpYEa1zr2a32YEefTAApSN7W 6H1jYqFL581DAuQt5uS93gLHNHG 48GZWczbXA57B412bfUGL8jrWaPY DSkiHnPATDWrqhgauLAbc95QEJ1 3aGbzfM9Wk3yozWBiEva8yEaHdeH EGePrTGuX3DpYGp3U33Ypfaxf72 2Uec3tvP3KHjfX21uQiWcqcVsiZX a64EapkSidPhroUSCEewW9H17ds 36j43Hebo1UtYLQdmzR1VFeV1vq2 46GLudu9ZqoMXDkSZbfThBPe2yPQ 3CV2aCuH5nCEcXeabvoGZWZAv2Cu 31XKQejBnmoyFmcJM8K3ciCw7Nwd 6VALXicjnvqUvNBLg8YuzBeeroi 3FpKAfeBwKLVhB4psLLXoU72e1a4</concepts>
  </members>
</namespace>
<namespace>
  <name>imag_impl</name>
  <anchor>imag_impl</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>248</lineNumber>
        <columnNumber>17</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>namespace</kind>
  <id>wd3htwxVmgrt5GMABTDAY4qHd6q</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <members>
    <records>hBx82X2UUzXZvPMZ9orwAqBi2Te</records>
  </members>
</namespace>
<record>
  <name>imag_t</name>
  <anchor>imag_t</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>252</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>hBx82X2UUzXZvPMZ9orwAqBi2Te</id>
  <extraction>implementation-defined</extraction>
  <parent>wd3htwxVmgrt5GMABTDAY4qHd6q</parent>
  <keyKind>struct</keyKind>
</record>
<namespace>
  <name>magnitude_impl</name>
  <anchor>magnitude_impl</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/representation_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/representation_concepts.h</sourcePath>
        <lineNumber>176</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>namespace</kind>
  <id>4QgmQL7HgFuz5suC8oXQnZ4hyk7N</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>//////////// MAGNITUDE ///////////////</literal>
        </text>
      </children>
    </brief>
  </doc>
  <members>
    <records>36gnDUzpYZqsPgbJAESzPMaK6juY</records>
  </members>
</namespace>
<record>
  <name>magnitude_t</name>
  <anchor>magnitude_t</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/representation_concepts.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/representation_concepts.h</sourcePath>
      <lineNumber>182</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>36gnDUzpYZqsPgbJAESzPMaK6juY</id>
  <extraction>implementation-defined</extraction>
  <parent>4QgmQL7HgFuz5suC8oXQnZ4hyk7N</parent>
  <keyKind>struct</keyKind>
</record>
<namespace>
  <name>modulus_impl</name>
  <anchor>modulus_impl</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>273</lineNumber>
        <columnNumber>17</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>namespace</kind>
  <id>4SHaht91AyUU5fVuBRK3uM9dQ3Cc</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <members>
    <records>2o91hAMxFbs5R2q4jGDs8F1TmNDu</records>
  </members>
</namespace>
<record>
  <name>modulus_t</name>
  <anchor>modulus_t</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>278</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2o91hAMxFbs5R2q4jGDs8F1TmNDu</id>
  <extraction>implementation-defined</extraction>
  <parent>4SHaht91AyUU5fVuBRK3uM9dQ3Cc</parent>
  <keyKind>struct</keyKind>
</record>
<namespace>
  <name>real_impl</name>
  <anchor>real_impl</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>222</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>namespace</kind>
  <id>WHn6bm5VTgAbNfdBCZ2666jP2hz</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>//////////// real / imag / modulus CUSTOMIZATION POINTS ///////////////</literal>
        </text>
      </children>
    </brief>
  </doc>
  <members>
    <records>3G4ccYrTBB857Ah7vH2g8zqCDTn3</records>
  </members>
</namespace>
<record>
  <name>real_t</name>
  <anchor>real_t</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>226</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3G4ccYrTBB857Ah7vH2g8zqCDTn3</id>
  <extraction>implementation-defined</extraction>
  <parent>WHn6bm5VTgAbNfdBCZ2666jP2hz</parent>
  <keyKind>struct</keyKind>
</record>
<typedef>
  <name>natural_origin_base_t</name>
  <anchor>natural_origin_base_t</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
        <lineNumber>248</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>3ftYcM1YZJozKNoBhZc51NtYvLhK</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>type</identifier>
          <prefix>
            <specialization>
              <kind>specialization</kind>
              <id>SUDs3XLS8yHmFdRgEnZXYDPRPqk</id>
              <identifier>natural_origin_base</identifier>
              <templateArgs>
                <constant>
                  <kind>constant</kind>
                  <value>QS</value>
                </constant>
              </templateArgs>
            </specialization>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
                <identifier>QuantitySpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
  </template>
</typedef>
<typedef>
  <name>reference_t</name>
  <anchor>reference_t</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/reference.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
        <lineNumber>46</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>41shz9r5JUEt8JdP4cmahP2ZeN9m</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
          <identifier>reference</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>Q</operand>
                </decltype>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>U</operand>
                </decltype>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Q</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
                <identifier>QuantitySpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>U</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
  </template>
</typedef>
<record>
  <name>cond_underlying_type</name>
  <anchor>cond_underlying_type</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>62</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>pGKsEXJ1uhtb16L2uFiDjVhrn6S</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
</record>
<record>
  <name>conditional_impl</name>
  <anchor>conditional_impl</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>48</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2TNPPQfFqVrZWhXttLHd9Xn1wi7Y</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>bool</identifier>
              </identifier>
            </name>
            <fundamentalType>bool</fundamentalType>
          </named>
        </type>
      </constant>
    </params>
  </template>
</record>
<record>
  <name>derived_dimension_impl</name>
  <anchor>derived_dimension_impl-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>65</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>368rhWkkRWxe5iwHzJACVakdyjPC</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Expr</name>
        <isParameterPack/>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>iZRdx4G8qVDTCA4VTjhxTNkUs55</id>
              <identifier>expr_fractions</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <id>2PgZ2ZAgs8odUE9ySmHXm77T49w4</id>
                          <identifier>dimension_one</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <isPackExpansion/>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Expr</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/dimension.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
          <lineNumber>66</lineNumber>
          <columnNumber>33</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
</record>
<record>
  <name>derived_quantity_spec_impl</name>
  <anchor>derived_quantity_spec_impl</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>618</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2dHbdnGLxs7cosxdoWtv7cFy8NMT</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Expr</name>
        <isParameterPack/>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3saBgG69eSBEhVisex6iF7AMzigU</id>
              <identifier>quantity_spec_interface</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
          <lineNumber>621</lineNumber>
          <columnNumber>5</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>iZRdx4G8qVDTCA4VTjhxTNkUs55</id>
              <identifier>expr_fractions</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <id>4QbdSnSogncVTvJJWScyAvQBwvux</id>
                          <identifier>dimensionless</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <isPackExpansion/>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Expr</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
          <lineNumber>625</lineNumber>
          <columnNumber>5</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>32XeMrS48XEybBbkV2VTasKZeKY5 j89K9rRcy3TcMkqcfeiwBXTyqs2</typedefs>
      <staticVariables>28ZKdGy4bgTkaf1BtivxnjGWcuuS 2g4ndC6GzV12uhR5hnDeS2kefdD6 YmCAJjpiQtdfkMDx2LjHzubrob7 3Y5rxTRvK1veci3D9R2NvX7GbH7x bzE6gcio6Gbbfcge2YaEefof1p2</staticVariables>
    </public>
  </interface>
</record>
<typedef>
  <name>_base_</name>
  <anchor>_base_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>627</lineNumber>
        <columnNumber>3</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>32XeMrS48XEybBbkV2VTasKZeKY5</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2dHbdnGLxs7cosxdoWtv7cFy8NMT</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>iZRdx4G8qVDTCA4VTjhxTNkUs55</id>
          <identifier>expr_fractions</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <id>4QbdSnSogncVTvJJWScyAvQBwvux</id>
                      <identifier>dimensionless</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <isPackExpansion/>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Expr</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>626</lineNumber>
        <columnNumber>3</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>j89K9rRcy3TcMkqcfeiwBXTyqs2</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2dHbdnGLxs7cosxdoWtv7cFy8NMT</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2dHbdnGLxs7cosxdoWtv7cFy8NMT</id>
          <identifier>derived_quantity_spec_impl</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<variable>
  <name>_character_</name>
  <anchor>_character_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>631</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>28ZKdGy4bgTkaf1BtivxnjGWcuuS</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2dHbdnGLxs7cosxdoWtv7cFy8NMT</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2Hv491FBzUHufEgtmwfLXcRMayVd</id>
          <identifier>quantity_character</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>detail::derived_quantity_character(typename _base_::_num_{}, typename _base_::_den_{})</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_dimension_</name>
  <anchor>_dimension_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>629</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2g4ndC6GzV12uhR5hnDeS2kefdD6</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2dHbdnGLxs7cosxdoWtv7cFy8NMT</parent>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>detail::expr_map&lt;to_dimension, derived_dimension, struct dimension_one&gt;(_base_{})</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_is_non_negative_</name>
  <anchor>_is_non_negative_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>633</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>YmCAJjpiQtdfkMDx2LjHzubrob7</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2dHbdnGLxs7cosxdoWtv7cFy8NMT</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <initializer>false</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>character</name>
  <anchor>character</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>636</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3Y5rxTRvK1veci3D9R2NvX7GbH7x</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2dHbdnGLxs7cosxdoWtv7cFy8NMT</parent>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use `get_character(qs)` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use `get_character(qs)` instead</message>
    </deprecated>
  </attributes>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2Hv491FBzUHufEgtmwfLXcRMayVd</id>
          <identifier>quantity_character</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>_character_</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>dimension</name>
  <anchor>dimension</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>635</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>bzE6gcio6Gbbfcge2YaEefof1p2</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2dHbdnGLxs7cosxdoWtv7cFy8NMT</parent>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use `get_dimension(qs)` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use `get_dimension(qs)` instead</message>
    </deprecated>
  </attributes>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>_dimension_</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>derived_unit_impl</name>
  <anchor>derived_unit_impl-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>735</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3raCjU4jB2y8P1YRAAwBW8dJiEka</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Expr</name>
        <isParameterPack/>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3vmqqZzaHhdZFqizjrzByokgAhr4</id>
              <identifier>unit_interface</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
          <lineNumber>736</lineNumber>
          <columnNumber>28</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>iZRdx4G8qVDTCA4VTjhxTNkUs55</id>
              <identifier>expr_fractions</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <id>4VpMfLu1y4pCm1ps5iazK1GsLpf4</id>
                          <identifier>one</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <isPackExpansion/>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Expr</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
          <lineNumber>736</lineNumber>
          <columnNumber>52</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>3dAgSAatBb2c3uVVpjVBwbffBErm</typedefs>
    </public>
  </interface>
</record>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>737</lineNumber>
        <columnNumber>3</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>3dAgSAatBb2c3uVVpjVBwbffBErm</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>3raCjU4jB2y8P1YRAAwBW8dJiEka</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>3raCjU4jB2y8P1YRAAwBW8dJiEka</id>
          <identifier>derived_unit_impl</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<record>
  <name>dimension_interface</name>
  <anchor>dimension_interface</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>68</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>14pWyqnAtWutWMZYD29PVUW3jXu</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
</record>
<record>
  <name>expr_fractions</name>
  <anchor>expr_fractions-03</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
      <lineNumber>412</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>iZRdx4G8qVDTCA4VTjhxTNkUs55</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Divides expression template spec to numerator and denominator parts</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>OneType</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>36j43Hebo1UtYLQdmzR1VFeV1vq2</id>
            <identifier>SymbolicArg</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Ts</name>
        <isParameterPack/>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <bases>
    <baseInfo>
      <type>
        <decltype>
          <kind>decltype</kind>
          <operand>expr_fractions_impl&lt;OneType, type_list&lt;Ts...&gt;&gt;()</operand>
        </decltype>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
          <lineNumber>413</lineNumber>
          <columnNumber>25</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
</record>
<record>
  <name>expr_type_impl</name>
  <anchor>expr_type_impl</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
      <lineNumber>162</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3bTiX46viNNhtHV4DZbUGCwurK9H</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>33jzsSgDUXUnPi4qrxNNQGAJ7vED</id>
              <identifier>type_identity</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>T</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
          <lineNumber>163</lineNumber>
          <columnNumber>25</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
</record>
<record>
  <name>fixed_string_iface</name>
  <anchor>fixed_string_iface</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>76</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>31bkbibbAYnQAQ2N3QBHsFAi2PvR</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
</record>
<record>
  <name>natural_origin_base</name>
  <anchor>natural_origin_base</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>238</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>SUDs3XLS8yHmFdRgEnZXYDPRPqk</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
                <identifier>QuantitySpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <default>
          <constant>
            <kind>constant</kind>
            <value>QS._is_non_negative_</value>
          </constant>
        </default>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>bool</identifier>
              </identifier>
            </name>
            <fundamentalType>bool</fundamentalType>
          </named>
        </type>
      </constant>
    </params>
  </template>
</record>
<record>
  <name>point_origin_interface</name>
  <anchor>point_origin_interface</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>101</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>KK9YaxHBuJyB7F2cmbzypn8JYd8</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
</record>
<record>
  <name>propagate_point_origin</name>
  <anchor>propagate_point_origin</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>299</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>mVBzwj1ZyfbqvPLmrbFHa3mQejq</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
      <constant>
        <kind>constant</kind>
        <default>
          <constant>
            <kind>constant</kind>
            <value>requires { U::_point_origin_; }</value>
          </constant>
        </default>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>bool</identifier>
              </identifier>
            </name>
            <fundamentalType>bool</fundamentalType>
          </named>
        </type>
      </constant>
    </params>
  </template>
</record>
<record>
  <name>quantity_iface</name>
  <anchor>quantity_iface</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>350</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2T4oYwVAM6kmERwtc2dpxnitdZoS</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
</record>
<record>
  <name>quantity_point_iface</name>
  <anchor>quantity_point_iface</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>447</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3fQ2bmpbSPUFA1pnpboFmFN3vkzk</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
</record>
<record>
  <name>quantity_spec_interface</name>
  <anchor>quantity_spec_interface</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>268</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3saBgG69eSBEhVisex6iF7AMzigU</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>4DhgG6VrVDCNVPKiKJUo5NRHGXZv</id>
              <identifier>quantity_spec_interface_base</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
          <lineNumber>268</lineNumber>
          <columnNumber>34</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <functions>32Qqq4jVr43gaQNSGFsT8ZddJRb5 5qi8WQDKW9g8D4Gma5LtvG5Sve7</functions>
    </public>
  </interface>
</record>
<overloads>
  <name>operator()</name>
  <anchor>operator_call-091</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>276</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>32Qqq4jVr43gaQNSGFsT8ZddJRb5</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>3saBgG69eSBEhVisex6iF7AMzigU</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Function call operators</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>()</overloadedOperator>
  <members>nER7yb9ZQ9GcQAeytQVNReWvKmc 35qf9NeF41BXrQ2ydX5ChiwBbo1B 4Qh9yZb9tnY1qQaWyuSL35m5qoUL</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator()</name>
  <anchor>operator_call-03</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>276</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>nER7yb9ZQ9GcQAeytQVNReWvKmc</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>3saBgG69eSBEhVisex6iF7AMzigU</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Self</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQ</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Self</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>FwdQ</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQ</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(mp_units::explicitly_convertible(Q::quantity_spec, Self{})) &amp;&amp;
            requires { typename quantity&lt;make_reference(Self{}, Q::unit), typename Q::rep&gt;; }</requires>
  </template>
  <funcClass>normal</funcClass>
  <isExplicitObjectMemberFunction/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator()</name>
  <anchor>operator_call-095</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>294</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>35qf9NeF41BXrQ2ydX5ChiwBbo1B</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>3saBgG69eSBEhVisex6iF7AMzigU</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Self</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdValue</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>val</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Self</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>FwdValue</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Value</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdValue</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>Self{}</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>(detail::explicitly_convertible_to_dimensionless(Self{}))</requires>
  </template>
  <funcClass>normal</funcClass>
  <isExplicitObjectMemberFunction/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator()</name>
  <anchor>operator_call-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>285</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4Qh9yZb9tnY1qQaWyuSL35m5qoUL</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>3saBgG69eSBEhVisex6iF7AMzigU</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
          <identifier>QuantityPoint</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Self</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>self</name>
    </param>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQP</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>qp</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Self</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>FwdQP</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQP</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
            <identifier>QuantityPoint</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(mp_units::explicitly_convertible(QP::quantity_spec, Self{})) &amp;&amp;
            requires { typename quantity_point&lt;make_reference(Self{}, QP::unit), QP::point_origin, typename QP::rep&gt;; }</requires>
  </template>
  <funcClass>normal</funcClass>
  <isExplicitObjectMemberFunction/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator[]</name>
  <anchor>operator_subs</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>270</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>5qi8WQDKW9g8D4Gma5LtvG5Sve7</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>3saBgG69eSBEhVisex6iF7AMzigU</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
          <identifier>Reference</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Self</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Self</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>Self{}</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <isExplicitObjectMemberFunction/>
  <constexpr>consteval</constexpr>
  <overloadedOperator>[]</overloadedOperator>
  <isRecordMethod/>
</function>
<record>
  <name>quantity_spec_interface_base</name>
  <anchor>quantity_spec_interface_base</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>193</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>4DhgG6VrVDCNVPKiKJUo5NRHGXZv</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
</record>
<record>
  <name>ratio</name>
  <anchor>ratio</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/bits/ratio.h</shortPath>
      <sourcePath>src/core/include/mp-units/bits/ratio.h</sourcePath>
      <lineNumber>69</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>This class is really similar to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>std::ratio.</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> An important difference is the fact that the objects of that class are used as class NTTPs rather then a type template parameter kind.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Provides compile-time rational arithmetic support.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
</record>
<record>
  <name>rep_for_impl</name>
  <anchor>rep_for_impl</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_traits.h</sourcePath>
      <lineNumber>77</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2wJfppQ9L4qpqtAmKkJdGimfBTg9</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
</record>
<record>
  <name>scaled_unit_impl</name>
  <anchor>scaled_unit_impl</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>307</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>PJchxsTkLdezWQPwqY6mH6A8yj9</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>M</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>xKAh8ftVFPPg9yHq2Nj39wmoCFd</id>
                <identifier>UnitMagnitude</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3vmqqZzaHhdZFqizjrzByokgAhr4</id>
              <identifier>unit_interface</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
          <lineNumber>308</lineNumber>
          <columnNumber>27</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>mVBzwj1ZyfbqvPLmrbFHa3mQejq</id>
              <identifier>propagate_point_origin</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>U</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
          <lineNumber>308</lineNumber>
          <columnNumber>51</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>22bCFDSzsHDXPRb2zTNLjT48Qa8J</typedefs>
      <staticVariables>gBR8peckTaCzM6JNF2XmD78Lbtk qpkWuWaYSgDGaDSaA6KGC86pyq8</staticVariables>
    </public>
  </interface>
</record>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>309</lineNumber>
        <columnNumber>3</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>22bCFDSzsHDXPRb2zTNLjT48Qa8J</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>PJchxsTkLdezWQPwqY6mH6A8yj9</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>PJchxsTkLdezWQPwqY6mH6A8yj9</id>
          <identifier>scaled_unit_impl</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<variable>
  <name>_mag_</name>
  <anchor>_mag_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>310</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>gBR8peckTaCzM6JNF2XmD78Lbtk</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>PJchxsTkLdezWQPwqY6mH6A8yj9</parent>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>xKAh8ftVFPPg9yHq2Nj39wmoCFd</id>
          <identifier>UnitMagnitude</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>M</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_reference_unit_</name>
  <anchor>_reference_unit_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>311</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>qpkWuWaYSgDGaDSaA6KGC86pyq8</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>PJchxsTkLdezWQPwqY6mH6A8yj9</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>U</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>{}</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>symbol_text_iface</name>
  <anchor>symbol_text_iface</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>108</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>UUcadh6BDMh3tM9didYeTgCbfZb</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
</record>
<record>
  <name>type_list</name>
  <anchor>type_list</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
      <lineNumber>94</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>zydBHZiWkNCjaiwDgPvMJMJbMjc</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Type list type used by the expression template framework</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The list of types</literal>
          </text>
        </children>
        <name>Ts</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Ts</name>
        <isParameterPack/>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>36j43Hebo1UtYLQdmzR1VFeV1vq2</id>
            <identifier>SymbolicArg</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
</record>
<record>
  <name>unit_interface</name>
  <anchor>unit_interface</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>175</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3vmqqZzaHhdZFqizjrzByokgAhr4</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
</record>
<record>
  <name>zero</name>
  <anchor>zero</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>70</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2AeuYsb1jMFCeQ8M4bwCfbLBjxp1</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <keyKind>struct</keyKind>
</record>
<record>
  <name>zero_quantity_t</name>
  <anchor>zero_quantity_t</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>238</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2v4DtGJWPQkBf8Jep2MJAmFHbJfQ</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Used as the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>.min</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> member of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>check_non_negative</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>clamp_non_negative</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> so that </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point::min()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>std::numeric_limits&lt;quantity_point&gt;::lowest()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> return the natural zero of that quantity type. </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point::min()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> detects this type and uses </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_type::zero()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> directly — no unit scaling, correct quantity spec automatically inferred from the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> instantiation.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Two auxiliary operators are provided for the compile-time bounds-nesting check in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point.h</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> (assertions that a relative origin&apos;s bounds nest inside its parent&apos;s):</literal>
          </text>
        </children>
      </paragraph>
      <list>
        <kind>list</kind>
        <items>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>zero_quantity_t + q = q</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> (zero is the additive identity)</literal>
                  </text>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>q &gt;= zero_quantity_t</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> ≡ </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>q &gt;= Q::zero()</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> (q is non-negative)</literal>
                  </text>
                </children>
              </paragraph>
            </blocks>
          </listItem>
        </items>
        <listKind>unordered</listKind>
      </list>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Sentinel for the lower domain bound of a half-line [0, ∞) policy.]</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
</record>
<function>
  <name>cbrt</name>
  <anchor>cbrt</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>111</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>392Gj8vVtYVY4tWEBZNYa6EDWxHw</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>d</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>cubic</name>
  <anchor>cubic</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>296</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>zvxfem2NUJjo6xT8LnccNPe5XTz</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
          <identifier>Unit</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>equivalent</name>
  <anchor>equivalent</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>238</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4QtEfXo4mvrxhUENFisDLtghbNYA</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Lhs</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Rhs</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<overloads>
  <name>get</name>
  <anchor>get-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>544</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2QA7VR9ughC1tW9h8SL1KZatScGE</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>4SRnLoGq21HrH1p2sEWKha6yK12j 2E3pQYHDWXLQ3T2wqj5X6ByW4aLX</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
</overloads>
<function>
  <name>get</name>
  <anchor>get-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>544</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4SRnLoGq21HrH1p2sEWKha6yK12j</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>get</name>
  <anchor>get-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>557</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2E3pQYHDWXLQ3T2wqj5X6ByW4aLX</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>get_character</name>
  <anchor>get_character</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>201</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3VxWxi4ipu5thrmEFRt7TzFLnYce</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2Hv491FBzUHufEgtmwfLXcRMayVd</id>
          <identifier>quantity_character</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>QS</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>qs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_dimension</name>
  <anchor>get_dimension</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>195</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3aM7d4RZN5c7LPMEnc2GzuXLBaKg</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>QS</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>qs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<overloads>
  <name>get_quantity_spec</name>
  <anchor>get_quantity_spec-068</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>103</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2TGr8bZoPMoAD35S9TKFA18F5j7m</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>2Ns4sRUPgpv8GqdSSTLFjn8Nfh7Y 2cUCb1kTY9pyDZYE7i827oGjHjSb</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
          <identifier>QuantitySpec</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
</overloads>
<function>
  <name>get_quantity_spec</name>
  <anchor>get_quantity_spec-062</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>103</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2Ns4sRUPgpv8GqdSSTLFjn8Nfh7Y</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
          <identifier>QuantitySpec</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>PO</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>po</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_quantity_spec</name>
  <anchor>get_quantity_spec-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>263</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2cUCb1kTY9pyDZYE7i827oGjHjSb</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: `quantity_spec` definition of `U` should not be marked `final`&quot;</string>
      </balancedTokens>
      <message>2.6.0: `quantity_spec` definition of `U` should not be marked `final`</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
          <identifier>QuantitySpec</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_unit</name>
  <anchor>get_unit</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>250</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3L3Xura3gv4Pq27hWeMCzoQnyiFD</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Self</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Self</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>self</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<overloads>
  <name>operator%</name>
  <anchor>operator_mod-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>407</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2W3HgMy3oRaiP7HGMoudSnzmpCaT</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Modulus operators</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>%</overloadedOperator>
  <members>2zZb1PfpPFAv5XrMA8iSpqkbA7Tg 2bZrZzQNr4ZiyZinfZVAzTLCWtns 2JyA6gzGXb3zGCBrcjQFPfXiVSb8</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator%</name>
  <anchor>operator_mod-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>426</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2zZb1PfpPFAv5XrMA8iSpqkbA7Tg</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Value</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>%</overloadedOperator>
</function>
<function>
  <name>operator%</name>
  <anchor>operator_mod-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>419</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2bZrZzQNr4ZiyZinfZVAzTLCWtns</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Value</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>%</overloadedOperator>
</function>
<function>
  <name>operator%</name>
  <anchor>operator_mod-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>407</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2JyA6gzGXb3zGCBrcjQFPfXiVSb8</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>%</overloadedOperator>
</function>
<overloads>
  <name>operator*</name>
  <anchor>operator_star-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/bits/ratio.h</shortPath>
      <sourcePath>src/core/include/mp-units/bits/ratio.h</sourcePath>
      <lineNumber>98</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>aT98PEbiAsU7PQuVRGwtCGxT3j5</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>scaled_unit</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> specializations have priority in this operation. This means that the library framework prevents passing it as an element to the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>derived_unit</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>. In such case only the reference unit is passed to the derived unit and the magnitude remains outside forming another scaled unit as a result of the operation.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>*</overloadedOperator>
  <members>4GxdSLz2QRcvwbGMhK15XPCviJHp 3q4BbepKDbbjkwbmEkG3kC19FRX8 2Na6jrdXSREdnexwZK5NMdBQibQG 4ZraXYwAGQRnnHZ5Vp5RvBhGgm2 2SkejFqSRCime52TuMFF4Gz4XURW</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator*</name>
  <anchor>operator_star-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>70</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4GxdSLz2QRcvwbGMhK15XPCviJHp</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>scaled_unit</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> specializations have priority in this operation. This means that the library framework prevents passing it as an element to the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>derived_unit</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>. In such case only the reference unit is passed to the derived unit and the magnitude remains outside forming another scaled unit as a result of the operation.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Lhs</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Rhs</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/bits/ratio.h</shortPath>
      <sourcePath>src/core/include/mp-units/bits/ratio.h</sourcePath>
      <lineNumber>98</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3q4BbepKDbbjkwbmEkG3kC19FRX8</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplication operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Provides compile-time rational arithmetic support.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
          <identifier>ratio</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
              <identifier>ratio</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
              <identifier>ratio</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-062</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>453</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2Na6jrdXSREdnexwZK5NMdBQibQG</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Value</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>val</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-00</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>434</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4ZraXYwAGQRnnHZ5Vp5RvBhGgm2</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-067</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>442</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2SkejFqSRCime52TuMFF4Gz4XURW</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Value</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>val</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<overloads>
  <name>operator+</name>
  <anchor>operator_plus-007</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/bits/ratio.h</shortPath>
      <sourcePath>src/core/include/mp-units/bits/ratio.h</sourcePath>
      <lineNumber>91</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>6faC95BHgme41wZUM7CHSNprpJ7</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Addition operators</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>+</overloadedOperator>
  <members>3jfpqBWwFseMusTCc5ZU3aHq8FqP 2LpajxbWJFevdJeuUdcdvHPU8bs 3ygZZVdPXh7xM51Kx6PbNX8wYHDA 3NekhRARJ3Ytne62TLhyysNr17CJ 4Y7ikH8xv2kV1yuiGBnKZXGi1A6Q 2dRAhJ4V6QJgmGk6GyHPDqmPBzdN 2nd4c7j5JnNS2i62ZY3hE2Xxj93i Vr3nWN5JwkxESY7PGLma7YA9qfx PaRuqVLpm17EveSqBRDmyi24izb 2fmzyiDMWMcpDhLEKkgyb11j4cNs 48yRNEJbUWtmuvdmWcNwUXPCrPWB 2VW97u1Ri2ggTj6wh7GcATcaLyKC 2F5m6FBuZ7Qak4iQ464qNpf9s56n 2DRYYnP6F6fb7nrMp6eM81vq37oB ESt8NMzpNG74JsbwErf4hgtAZL1 3whLR4TpiGU7eP2Gqp5nQWjaQYGY</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator+</name>
  <anchor>operator_plus-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>110</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3jfpqBWwFseMusTCc5ZU3aHq8FqP</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
          <identifier>QuantityPoint</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>PO</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>po</name>
    </param>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQ</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-001</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>247</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2LpajxbWJFevdJeuUdcdvHPU8bs</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Q</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Q</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2v4DtGJWPQkBf8Jep2MJAmFHbJfQ</id>
              <identifier>zero_quantity_t</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-0d5</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/bits/ratio.h</shortPath>
      <sourcePath>src/core/include/mp-units/bits/ratio.h</sourcePath>
      <lineNumber>91</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3ygZZVdPXh7xM51Kx6PbNX8wYHDA</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Addition operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Provides compile-time rational arithmetic support.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
          <identifier>ratio</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
              <identifier>ratio</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
              <identifier>ratio</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>241</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3NekhRARJ3Ytne62TLhyysNr17CJ</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Q</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2v4DtGJWPQkBf8Jep2MJAmFHbJfQ</id>
              <identifier>zero_quantity_t</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Q</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>q</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>100</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4Y7ikH8xv2kV1yuiGBnKZXGi1A6Q</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Addition operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A compile-time fixed string</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
          <identifier>basic_fixed_string</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
            <constant>
              <kind>constant</kind>
              <value>1 + N</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <isConst/>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>CharT</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-074</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>372</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2dRAhJ4V6QJgmGk6GyHPDqmPBzdN</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Value</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>89</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2nd4c7j5JnNS2i62ZY3hE2Xxj93i</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Addition operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A compile-time fixed string</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
          <identifier>basic_fixed_string</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
            <constant>
              <kind>constant</kind>
              <value>N + 1</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>CharT</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>78</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>Vr3nWN5JwkxESY7PGLma7YA9qfx</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Addition operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A compile-time fixed string</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
          <identifier>basic_fixed_string</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
            <constant>
              <kind>constant</kind>
              <value>N + N2</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <constant>
                      <kind>constant</kind>
                      <value>N2</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-01b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>111</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>PaRuqVLpm17EveSqBRDmyi24izb</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Addition operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A compile-time fixed string</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
          <identifier>basic_fixed_string</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
            <constant>
              <kind>constant</kind>
              <value>N + N2 - 1</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <array>
              <kind>array</kind>
              <elementType>
                <named>
                  <kind>named</kind>
                  <isConst/>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </elementType>
              <bounds>
                <written>N2</written>
              </bounds>
            </array>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-077</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>365</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2fmzyiDMWMcpDhLEKkgyb11j4cNs</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Value</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>354</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>48yRNEJbUWtmuvdmWcNwUXPCrPWB</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>461</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2VW97u1Ri2ggTj6wh7GcATcaLyKC</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
          <identifier>QuantityPoint</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>PO2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>qp</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { q + qp.quantity_ref_from(PO2); }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-059</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>451</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2F5m6FBuZ7Qak4iQ464qNpf9s56n</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
          <identifier>QuantityPoint</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>PO1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>qp</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { qp.quantity_ref_from(PO1) + q; }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-057</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>110</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2DRYYnP6F6fb7nrMp6eM81vq37oB</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Addition operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A symbol text representation</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
          <identifier>symbol_text</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>N + N2</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>M + M2</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                  <identifier>symbol_text</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>M</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                  <identifier>symbol_text</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>N2</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>M2</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-010</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>123</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>ESt8NMzpNG74JsbwErf4hgtAZL1</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Addition operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A compile-time fixed string</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
          <identifier>basic_fixed_string</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
            <constant>
              <kind>constant</kind>
              <value>N1 + N - 1</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <array>
              <kind>array</kind>
              <elementType>
                <named>
                  <kind>named</kind>
                  <isConst/>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </elementType>
              <bounds>
                <written>N1</written>
              </bounds>
            </array>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-0d3</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>117</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3whLR4TpiGU7eP2Gqp5nQWjaQYGY</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
          <identifier>QuantityPoint</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQ</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>PO</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>po</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<overloads>
  <name>operator-</name>
  <anchor>operator_minus-065</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/bits/ratio.h</shortPath>
      <sourcePath>src/core/include/mp-units/bits/ratio.h</sourcePath>
      <lineNumber>89</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2R9vL587jvsq9r9YZgW3FZDyqwzm</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Unary minus operators</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>-</overloadedOperator>
  <members>tmogEzzzrjyfucaez8Pu2Vv98E3 n8ZvEnjVvjWRwQamQ77ZYy79Z9V cSmQHPxMfwg2dxemAEX4C9FdXzc 4RSCp8qRESwogaw8tNXhsRk4Mfys 3Ztn8oDwuuGUgD8AFDJyEDG9x4qX 2PF3qYkfwAcwxhenwizmnRFhBpFe 2Tffi5ZH1M5XJyFLETZGYn8PNVcx 3NxPvfJCKbUDrFmFEEz95YS6REGD VQwrZg4kmDxUSoipfmDqNPDGhoe 3RYhF5xtNSRhV6ZdsftkozQu7hHn 2btJTUN93tx6dJq9r4LdczHFgBzt aPs5Y7J3Cd7bsx8FqN6BTqgjy8X 3KALhSLJPrMSZ3jtqkToDUuvFnJX</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator-</name>
  <anchor>operator_minus-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/bits/ratio.h</shortPath>
      <sourcePath>src/core/include/mp-units/bits/ratio.h</sourcePath>
      <lineNumber>89</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>tmogEzzzrjyfucaez8Pu2Vv98E3</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Unary minus operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Provides compile-time rational arithmetic support.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The operand</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
          <identifier>ratio</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
              <identifier>ratio</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-03</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>124</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>n8ZvEnjVvjWRwQamQ77ZYy79Z9V</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
          <identifier>QuantityPoint</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>PO</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>po</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Q</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { -q; }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-02b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>134</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>cSmQHPxMfwg2dxemAEX4C9FdXzc</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>PO1</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>PO2</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>516</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4RSCp8qRESwogaw8tNXhsRk4Mfys</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>PO1</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>po</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>PO2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>qp</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>259</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3Ztn8oDwuuGUgD8AFDJyEDG9x4qX</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Q</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Q</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2v4DtGJWPQkBf8Jep2MJAmFHbJfQ</id>
              <identifier>zero_quantity_t</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-063</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/bits/ratio.h</shortPath>
      <sourcePath>src/core/include/mp-units/bits/ratio.h</sourcePath>
      <lineNumber>96</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2PF3qYkfwAcwxhenwizmnRFhBpFe</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Subtraction operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Provides compile-time rational arithmetic support.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
          <identifier>ratio</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
              <identifier>ratio</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
              <identifier>ratio</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-068</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>253</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2Tffi5ZH1M5XJyFLETZGYn8PNVcx</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Q</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2v4DtGJWPQkBf8Jep2MJAmFHbJfQ</id>
              <identifier>zero_quantity_t</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Q</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>q</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-0aa</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>398</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3NxPvfJCKbUDrFmFEEz95YS6REGD</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Value</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-023</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>391</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>VQwrZg4kmDxUSoipfmDqNPDGhoe</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Value</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-0ad</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>380</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3RYhF5xtNSRhV6ZdsftkozQu7hHn</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>480</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2btJTUN93tx6dJq9r4LdczHFgBzt</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>PO1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>QP2</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { lhs.quantity_ref_from(PO1) - rhs.quantity_ref_from(QP2::point_origin); }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-029</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>494</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>aPs5Y7J3Cd7bsx8FqN6BTqgjy8X</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>PO1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>qp</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>PO2</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>po</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-0a6</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>471</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3KALhSLJPrMSZ3jtqkToDUuvFnJX</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
          <identifier>QuantityPoint</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>PO1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>qp</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { qp.quantity_ref_from(PO1) - q; }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<overloads>
  <name>operator/</name>
  <anchor>operator_slash-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/bits/ratio.h</shortPath>
      <sourcePath>src/core/include/mp-units/bits/ratio.h</sourcePath>
      <lineNumber>106</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2Yyi1mcuRHoQzCHPDKgCJ5Ex3VYL</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>scaled_unit</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> specializations have priority in this operation. This means that the library framework prevents passing it as an element to the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>derived_unit</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>. In such case only the reference unit is passed to the derived unit and the magnitude remains outside forming another scaled unit as a result of the operation.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>/</overloadedOperator>
  <members>3P5khyTTaaZe549HJrQgZ9kunhqb 6VMq2QzHcRBKNg86Cuwx3UMfJYL 26VaQZ5yf4pNuoFWQbeP43bxzwYu 3UQGFPw51omHFR5bhe3NUzUUs5Gt 2DGDU5q77gaL7LqDtit6RnKvd8DM</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator/</name>
  <anchor>operator_slash-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>76</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3P5khyTTaaZe549HJrQgZ9kunhqb</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>scaled_unit</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> specializations have priority in this operation. This means that the library framework prevents passing it as an element to the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>derived_unit</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>. In such case only the reference unit is passed to the derived unit and the magnitude remains outside forming another scaled unit as a result of the operation.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Lhs</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Rhs</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-00</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/bits/ratio.h</shortPath>
      <sourcePath>src/core/include/mp-units/bits/ratio.h</sourcePath>
      <lineNumber>106</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>6VMq2QzHcRBKNg86Cuwx3UMfJYL</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Division operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Provides compile-time rational arithmetic support.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
          <identifier>ratio</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
              <identifier>ratio</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
              <identifier>ratio</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>483</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>26VaQZ5yf4pNuoFWQbeP43bxzwYu</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Value</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>val</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>464</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3UQGFPw51omHFR5bhe3NUzUUs5Gt</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>473</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2DGDU5q77gaL7LqDtit6RnKvd8DM</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>get_quantity_spec(R1)</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Value</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>val</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<overloads>
  <name>pow</name>
  <anchor>pow-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>99</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2BLMye2a3M7wNajoHksU2gZSfkFd</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>pt2XiTooBKvaMKQs2KtojurgQ7f 2vkEwHf8EXg2ZfPnxBFZ3UsPUVfA</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
</overloads>
<function>
  <name>pow</name>
  <anchor>pow-03</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>99</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>pt2XiTooBKvaMKQs2KtojurgQ7f</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>D</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>d</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>pow</name>
  <anchor>pow-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>105</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2vkEwHf8EXg2ZfPnxBFZ3UsPUVfA</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>D</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>d</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>sqrt</name>
  <anchor>sqrt</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>110</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4ZZz4dAcGNerrQqUKUrshRtue2NY</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>d</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>square</name>
  <anchor>square</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>295</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3rrSMBbfEsfyKm2WomW786fVjDWL</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
          <identifier>Unit</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>swap</name>
  <anchor>swap</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>171</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>V7yTaVqj8iP4xTQ2wTAbdhMQqrx</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<overloads>
  <name>operator&lt;&lt;</name>
  <anchor>operator_lshift-00</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>179</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>AEYpUGR5sUWNDtrUWadmPjQYFQx</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Stream insertion operators</literal>
        </text>
      </children>
    </brief>
  </doc>
  <funcClass>normal</funcClass>
  <overloadedOperator>&lt;&lt;</overloadedOperator>
  <members>48jUM7Snj14eo9UuJVbaynEavRz7 3iXCQSBrjSna2A1tz2c24UQ27bbB 3pjhmogdpEJ95NN8T3iVmNedK2yG</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator&lt;&lt;</name>
  <anchor>operator_lshift-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>179</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>48jUM7Snj14eo9UuJVbaynEavRz7</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Stream insertion operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Reference to the current output stream</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>An output stream</literal>
          </text>
        </children>
        <name>os</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The object to output</literal>
          </text>
        </children>
        <name>str</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>25SvzRR2ZNJzQSA1GeqWrnSoTQS9</id>
              <identifier>basic_ostream</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>CharT</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>25SvzRR2ZNJzQSA1GeqWrnSoTQS9</id>
                  <identifier>basic_ostream</identifier>
                  <prefix>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                      <identifier>std</identifier>
                    </identifier>
                  </prefix>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>os</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>str</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <overloadedOperator>&lt;&lt;</overloadedOperator>
</function>
<function>
  <name>operator&lt;&lt;</name>
  <anchor>operator_lshift-0c2</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>565</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3iXCQSBrjSna2A1tz2c24UQ27bbB</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Stream insertion operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Reference to the current output stream</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>An output stream</literal>
          </text>
        </children>
        <name>os</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The object to output</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>25SvzRR2ZNJzQSA1GeqWrnSoTQS9</id>
              <identifier>basic_ostream</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>CharT</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Traits</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>25SvzRR2ZNJzQSA1GeqWrnSoTQS9</id>
                  <identifier>basic_ostream</identifier>
                  <prefix>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                      <identifier>std</identifier>
                    </identifier>
                  </prefix>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Traits</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>os</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { os &lt;&lt; q.numerical_value_ref_in(q.unit); }</requires>
  <overloadedOperator>&lt;&lt;</overloadedOperator>
</function>
<function>
  <name>operator&lt;&lt;</name>
  <anchor>operator_lshift-0ca</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>547</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3pjhmogdpEJ95NN8T3iVmNedK2yG</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Stream insertion operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Reference to the current output stream</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>An output stream</literal>
          </text>
        </children>
        <name>os</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The object to output</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>25SvzRR2ZNJzQSA1GeqWrnSoTQS9</id>
              <identifier>basic_ostream</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>CharT</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Traits</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>25SvzRR2ZNJzQSA1GeqWrnSoTQS9</id>
                  <identifier>basic_ostream</identifier>
                  <prefix>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                      <identifier>std</identifier>
                    </identifier>
                  </prefix>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Traits</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>os</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>PO</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>qp</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { os &lt;&lt; qp.quantity_from_zero(); }</requires>
  <overloadedOperator>&lt;&lt;</overloadedOperator>
</function>
<overloads>
  <name>operator==</name>
  <anchor>operator_eq-00</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/bits/ratio.h</shortPath>
      <sourcePath>src/core/include/mp-units/bits/ratio.h</sourcePath>
      <lineNumber>86</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>88sCTPBkUMZkZCz7ZBzndAJjGf3</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Equality operators</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>==</overloadedOperator>
  <members>34wb46rix8QPaQCLudBc7Xh7wzWz 25Pp7xokDXJ9JtAhEcykCRYVSTDz 3rc28UGgVL8t96C7QvweECXiHLkm 3fVB6xVHFZDnT8SjmvrXN4G9SFyc 44kY6rkENB4oqNsdnpRwFfkCDB95 42DRmeqYEnpfqgxdzsvJeYoMQruS 3rMUNNutze1HBw5eMu8SbJNAt6XJ 42Cr6HvFbAyXV2cQ1kfgriCULUFQ 4NwGe83AZikyNMqqUdRpRSxj3pvK c8NBT8WMbVAqPf1GXfqsRE2WRNH 35F2sVjdpUXYqVkJtFuEZDWdSEq6 2PH7wdVExQKVd5F3j4d5Nr6YfEFt</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator==</name>
  <anchor>operator_eq-0946</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/bits/ratio.h</shortPath>
      <sourcePath>src/core/include/mp-units/bits/ratio.h</sourcePath>
      <lineNumber>86</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>34wb46rix8QPaQCLudBc7Xh7wzWz</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Equality operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the objects are equal, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
              <identifier>ratio</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
              <identifier>ratio</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <isDefaulted/>
  <isExplicitlyDefaulted/>
  <constexpr>consteval</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<function>
  <name>operator==</name>
  <anchor>operator_eq-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>144</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>25Pp7xokDXJ9JtAhEcykCRYVSTDz</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Equality operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the objects are equal, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <array>
              <kind>array</kind>
              <elementType>
                <named>
                  <kind>named</kind>
                  <isConst/>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </elementType>
              <bounds>
                <written>N2</written>
              </bounds>
            </array>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<function>
  <name>operator==</name>
  <anchor>operator_eq-0ccf</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>137</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3rc28UGgVL8t96C7QvweECXiHLkm</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Equality operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the objects are equal, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <constant>
                      <kind>constant</kind>
                      <value>N2</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<function>
  <name>operator==</name>
  <anchor>operator_eq-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>157</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3fVB6xVHFZDnT8SjmvrXN4G9SFyc</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Equality operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the objects are equal, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                  <identifier>symbol_text</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>M</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <array>
              <kind>array</kind>
              <elementType>
                <named>
                  <kind>named</kind>
                  <isConst/>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>char</identifier>
                    </identifier>
                  </name>
                  <fundamentalType>char</fundamentalType>
                </named>
              </elementType>
              <bounds>
                <written>N2</written>
              </bounds>
            </array>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { symbol_text&lt;N, M&gt;(rhs); }</requires>
  <constexpr>consteval</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<function>
  <name>operator==</name>
  <anchor>operator_eq-0db</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>143</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>44kY6rkENB4oqNsdnpRwFfkCDB95</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Equality operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the objects are equal, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                  <identifier>symbol_text</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>M</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>char</identifier>
            </identifier>
          </name>
          <fundamentalType>char</fundamentalType>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { symbol_text&lt;N, M&gt;(rhs); }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<function>
  <name>operator==</name>
  <anchor>operator_eq-0d8d6</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>127</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>42DRmeqYEnpfqgxdzsvJeYoMQruS</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Equality operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the objects are equal, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                  <identifier>symbol_text</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>M</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                  <identifier>symbol_text</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>N2</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>M2</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<function>
  <name>operator==</name>
  <anchor>operator_eq-0cca</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>265</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3rMUNNutze1HBw5eMu8SbJNAt6XJ</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Q</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2v4DtGJWPQkBf8Jep2MJAmFHbJfQ</id>
              <identifier>zero_quantity_t</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<function>
  <name>operator==</name>
  <anchor>operator_eq-0d8d3</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>82</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>42Cr6HvFbAyXV2cQ1kfgriCULUFQ</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Equality operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the objects are equal, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Lhs</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Rhs</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<function>
  <name>operator==</name>
  <anchor>operator_eq-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>510</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4NwGe83AZikyNMqqUdRpRSxj3pvK</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Equality operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the objects are equal, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2AeuYsb1jMFCeQ8M4bwCfbLBjxp1</id>
              <identifier>zero</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<function>
  <name>operator==</name>
  <anchor>operator_eq-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>503</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>c8NBT8WMbVAqPf1GXfqsRE2WRNH</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Equality operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the objects are equal, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Value</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<function>
  <name>operator==</name>
  <anchor>operator_eq-094c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>496</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>35F2sVjdpUXYqVkJtFuEZDWdSEq6</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Equality operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the objects are equal, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<function>
  <name>operator==</name>
  <anchor>operator_eq-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>524</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2PH7wdVExQKVd5F3j4d5Nr6YfEFt</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Equality operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the objects are equal, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>PO1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>QP2</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<overloads>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-03</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/bits/ratio.h</shortPath>
      <sourcePath>src/core/include/mp-units/bits/ratio.h</sourcePath>
      <lineNumber>87</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>qeKGzoLD24fP2CwkgNx82bfmiw2</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Three-way comparison operators</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
  <members>44GyRmCjgxCvM2JArKX5oijW4NVj 4Az4CP11qBMxj6WhCaMHKeUQGMG7 2XxdH8THAoGkRNbLFrAvyntDahNQ 33oyLK9izsZbw1RdNrYJ9HFz38Vv 4UcBzxE7GtXg3ZULuvUx8oLBrb4A 2UjoAZicygfhV2WCCmuxFqghB7bW 33W8ht2pV6tFgYCUz45vNTzgizW5 3xFJzc1od6A2GpP2n3T83TCMgPJ 23eAobHaMEr7r68m37Q3dv9UcwMu AS6LMY4xQxJrk5fwpWFvHm8v5X7 29kMTE48vNCJ1tA1hLjRdJ2Ye9XD</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/bits/ratio.h</shortPath>
      <sourcePath>src/core/include/mp-units/bits/ratio.h</sourcePath>
      <lineNumber>87</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>44GyRmCjgxCvM2JArKX5oijW4NVj</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Three-way comparison operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The relative order of the objects</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
              <identifier>ratio</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
              <identifier>ratio</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
</function>
<function>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>158</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4Az4CP11qBMxj6WhCaMHKeUQGMG7</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Three-way comparison operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The relative order of the objects</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <array>
              <kind>array</kind>
              <elementType>
                <named>
                  <kind>named</kind>
                  <isConst/>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </elementType>
              <bounds>
                <written>N2</written>
              </bounds>
            </array>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
</function>
<function>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-06e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>151</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2XxdH8THAoGkRNbLFrAvyntDahNQ</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Three-way comparison operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The relative order of the objects</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <constant>
                      <kind>constant</kind>
                      <value>N2</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
</function>
<function>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-093</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>164</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>33oyLK9izsZbw1RdNrYJ9HFz38Vv</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Three-way comparison operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The relative order of the objects</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                  <identifier>symbol_text</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>M</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <array>
              <kind>array</kind>
              <elementType>
                <named>
                  <kind>named</kind>
                  <isConst/>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>char</identifier>
                    </identifier>
                  </name>
                  <fundamentalType>char</fundamentalType>
                </named>
              </elementType>
              <bounds>
                <written>N2</written>
              </bounds>
            </array>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { symbol_text&lt;N, M&gt;(rhs); }</requires>
  <constexpr>consteval</constexpr>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
</function>
<function>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>150</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4UcBzxE7GtXg3ZULuvUx8oLBrb4A</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Three-way comparison operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The relative order of the objects</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                  <identifier>symbol_text</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>M</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>char</identifier>
            </identifier>
          </name>
          <fundamentalType>char</fundamentalType>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { symbol_text&lt;N, M&gt;(rhs); }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
</function>
<function>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-06a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>117</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2UjoAZicygfhV2WCCmuxFqghB7bW</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Three-way comparison operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The relative order of the objects</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                  <identifier>symbol_text</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>M</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                  <identifier>symbol_text</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>N2</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>M2</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
</function>
<function>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-092</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>271</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>33W8ht2pV6tFgYCUz45vNTzgizW5</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Three-way comparison operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The relative order of the objects</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Q</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2v4DtGJWPQkBf8Jep2MJAmFHbJfQ</id>
              <identifier>zero_quantity_t</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
</function>
<function>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-003</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>533</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3xFJzc1od6A2GpP2n3T83TCMgPJ</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Three-way comparison operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The relative order of the objects</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2AeuYsb1jMFCeQ8M4bwCfbLBjxp1</id>
              <identifier>zero</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
</function>
<function>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>526</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>23eAobHaMEr7r68m37Q3dv9UcwMu</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Three-way comparison operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The relative order of the objects</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Value</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
</function>
<function>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-00b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>519</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>AS6LMY4xQxJrk5fwpWFvHm8v5X7</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Three-way comparison operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The relative order of the objects</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
</function>
<function>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>535</lineNumber>
      <columnNumber>3</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>29kMTE48vNCJ1tA1hLjRdJ2Ye9XD</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Three-way comparison operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The relative order of the objects</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The left operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The right operand</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>PO1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>QP2</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
</function>
<concept>
  <name>AbsolutePointOrigin</name>
  <anchor>AbsolutePointOrigin</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point_concepts.h</sourcePath>
        <lineNumber>51</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>2LeHToFYu4KtmBngvtbRipYmKBa4</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>PointOrigin&lt;T&gt; &amp;&amp; is_derived_from_specialization_of_v&lt;T, absolute_point_origin&gt;</constraint>
</concept>
<concept>
  <name>BaseDimension</name>
  <anchor>BaseDimension</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/dimension_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/dimension_concepts.h</sourcePath>
        <lineNumber>58</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>25wwm52Kpr4FqdgtjKe1XMSsvZmV</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all dimension types derived from a specialization of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>base_dimension</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all named base dimensions in the library.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>Dimension&lt;T&gt; &amp;&amp; is_derived_from_specialization_of_v&lt;T, base_dimension&gt;</constraint>
</concept>
<concept>
  <name>DerivedQuantitySpec</name>
  <anchor>DerivedQuantitySpec</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>101</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>2x53BpYEa1zr2a32YEefTAApSN7W</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>derived_quantity_spec</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> specializations.</literal>
          </text>
        </children>
      </paragraph>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Deriving a strong type from it is considered a logic error and thus is explicitly not supported here.</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Concept matching all derived quantity specification types</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>QuantitySpec&lt;T&gt; &amp;&amp;
  (is_specialization_of&lt;T, derived_quantity_spec&gt; ||
   (QuantityKindSpec&lt;T&gt; &amp;&amp; is_specialization_of&lt;MP_UNITS_NONCONST_TYPE(T::_quantity_spec_), derived_quantity_spec&gt;))</constraint>
</concept>
<concept>
  <name>ImplicitFromNumberQuantity</name>
  <anchor>ImplicitFromNumberQuantity</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
        <lineNumber>130</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>6H1jYqFL581DAuQt5uS93gLHNHG</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>Quantity&lt;Q&gt; &amp;&amp; ImplicitFromNumber&lt;Q::reference&gt;</constraint>
</concept>
<concept>
  <name>MagArg</name>
  <anchor>MagArg</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/bits/unit_magnitude.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/unit_magnitude.h</sourcePath>
        <lineNumber>55</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>48GZWczbXA57B412bfUGL8jrWaPY</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>std::integral&lt;T&gt; || is_mag_constant&lt;T&gt; || std::is_same_v&lt;T, ratio&gt;</constraint>
</concept>
<concept>
  <name>NamedQuantitySpec</name>
  <anchor>NamedQuantitySpec</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>89</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>DSkiHnPATDWrqhgauLAbc95QEJ1</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all types that derive from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_spec</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Concept matching all named quantity specification types</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>QuantitySpec&lt;T&gt; &amp;&amp; is_derived_from_specialization_of_quantity_spec&lt;T&gt; &amp;&amp; !QuantityKindSpec&lt;T&gt;</constraint>
</concept>
<concept>
  <name>QSProperty</name>
  <anchor>QSProperty</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>334</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>3aGbzfM9Wk3yozWBiEva8yEaHdeH</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>!QuantitySpec&lt;T&gt;</constraint>
</concept>
<concept>
  <name>QuantityKindSpec</name>
  <anchor>QuantityKindSpec</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_concepts.h</sourcePath>
        <lineNumber>90</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>EGePrTGuX3DpYGp3U33Ypfaxf72</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>QuantitySpec&lt;T&gt; &amp;&amp; is_specialization_of&lt;T, kind_of_&gt;</constraint>
</concept>
<concept>
  <name>SameAbsolutePointOriginAs</name>
  <anchor>SameAbsolutePointOriginAs</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point_concepts.h</sourcePath>
        <lineNumber>141</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>2Uec3tvP3KHjfX21uQiWcqcVsiZX</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>V</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <constraint>PointOrigin&lt;T&gt; &amp;&amp; PointOrigin&lt;MP_UNITS_REMOVE_CONST(decltype(V))&gt; &amp;&amp; same_absolute_point_origins(T{}, V)</constraint>
</concept>
<concept>
  <name>ScalarRepConvertible</name>
  <anchor>ScalarRepConvertible</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
        <lineNumber>112</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>a64EapkSidPhroUSCEewW9H17ds</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>!Quantity&lt;T&gt; &amp;&amp; Scalar&lt;T&gt; &amp;&amp;
  (treat_as_floating_point&lt;Rep&gt; || !treat_as_floating_point&lt;T&gt; ||
   unsatisfied&lt;&quot;Scaling a non-floating-point &apos;{}&apos; quantity by a floating-point &apos;{}&apos; scalar is truncating&quot;&gt;(
     type_name&lt;Rep&gt;(), type_name&lt;T&gt;()))</constraint>
</concept>
<concept>
  <name>SymbolicArg</name>
  <anchor>SymbolicArg</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
        <lineNumber>57</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>36j43Hebo1UtYLQdmzR1VFeV1vq2</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>!std::is_const_v&lt;T&gt; &amp;&amp; !std::is_reference_v&lt;T&gt;</constraint>
</concept>
<concept>
  <name>SymbolicConstant</name>
  <anchor>SymbolicConstant</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
        <lineNumber>86</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>46GLudu9ZqoMXDkSZbfThBPe2yPQ</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>SymbolicArg&lt;T&gt; &amp;&amp; MP_UNITS_SYMBOLIC_CONSTANT_TRAITS(T)</constraint>
</concept>
<concept>
  <name>UnitConvertibleTo</name>
  <anchor>UnitConvertibleTo</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_concepts.h</sourcePath>
        <lineNumber>103</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>3CV2aCuH5nCEcXeabvoGZWZAv2Cu</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U1</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>U2</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <constraint>Unit&lt;U1&gt; &amp;&amp; Unit&lt;MP_UNITS_REMOVE_CONST(decltype(U2))&gt; &amp;&amp;
  ((U1{} == U2) ||
   ((!Unit&lt;U1&gt; || !Unit&lt;MP_UNITS_REMOVE_CONST(decltype(U2))&gt; || UnitsOfCompatibleQuantities&lt;U1{}, U2&gt;) &amp;&amp;
    ConvertibleUnits&lt;U1{}, U2&gt;))</constraint>
</concept>
<concept>
  <name>has_element_type_member</name>
  <anchor>has_element_type_member</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>74</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>31XKQejBnmoyFmcJM8K3ciCw7Nwd</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>requires { typename T::element_type; }</constraint>
</concept>
<concept>
  <name>has_value_type_member</name>
  <anchor>has_value_type_member</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>71</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>6VALXicjnvqUvNBLg8YuzBeeroi</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>requires { typename T::value_type; }</constraint>
</concept>
<concept>
  <name>integral</name>
  <anchor>integral</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/representation_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/representation_concepts.h</sourcePath>
        <lineNumber>61</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>3FpKAfeBwKLVhB4psLLXoU72e1a4</id>
  <extraction>implementation-defined</extraction>
  <parent>2iqJ4TKZEJSLEpPaokwu56qTtgmk</parent>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>std::integral&lt;T&gt; || std::same_as&lt;std::remove_cv_t&lt;T&gt;, int128_t&gt; || std::same_as&lt;std::remove_cv_t&lt;T&gt;, uint128_t&gt;</constraint>
</concept>
<namespace>
  <name>utility</name>
  <anchor>utility</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/constrained.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
        <lineNumber>50</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>75</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/utility/representation.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/representation.h</sourcePath>
        <lineNumber>35</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>53</lineNumber>
        <columnNumber>19</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/utility/unspecified.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/unspecified.h</sourcePath>
        <lineNumber>38</lineNumber>
        <columnNumber>19</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>namespace</kind>
  <id>2HniVS23jfsJhnimKmHvULUT12dS</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Public authoring vocabulary shared by the library&apos;s own customization points and by higher-level tools.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <members>
    <namespaces>r7u95SEarQA16WhciqdtyGPBBE1</namespaces>
    <typedefs>4Wd9KADHDRqXzd5dKGd1ghRutSid 3yJx3HzFLwmQBaEsjfSC3Grikt4h 4LkJzsVRxcqkwJFyFBdewVnrckPp 3MeSZjvyhT5WiVsJwXcAUYh11Nv3 3WxuMseiqThJiqJayEGE4aDWyQi2 3jSykxsiHLgqWeaNqixdguo3b53M 48QEX4B92YUVKnA3Hd5HYbeZSjj3 scNwWxWE8yPLVqub1y73E9RsYAY</typedefs>
    <records>Nzx2qJ12pKf2XySPV5gB6388Ty7 f5HBUavSoURn4BnnTPAePinwBE6 64SzJH8WfiNzg8c8iZ7a8Sppiub Ta7GV6f6RHEgC8tgs11uQqtWhc1 2eE7JCvWEwV5xehQ4sPN31PxLGJc 2vvaRWZoRXxphRJnVxcaTThUtWo9 2hxKPyghD2SSxWo9iEmTXMpbRBMA 34kSk3sx7tXSwi2JrpezzPQspmjw 3b2TTEp3w2YWUTvFvXjvCFX9cBHK ktnRPuWZy1tNGnc2XX5w6ozA1h3 QzY7vwpxHsx4hyVBoBhC8ExSLeo</records>
    <enums>2woQWhYqRpTFSgSbfDEwwTPw6xor 2o5SENx17YPyf7nRPA8itqsH37Mg</enums>
    <functions>3VGFynjYbdiEobHb8vtieBJPetiF 3kvJHC4TUh5X2N1r44MbL13mdW5H 4RJJ87MNDku7o8cUptU4WXtkZA3X 23oGctnV2VJrZAtxT1EqucPNhQiC 2aTEDo1af7ddFJ4dE7wdpkuYW8nD 2YJp8hEka492GQDBZ9z3uUKoRcwm 3KUrbhJcb4CgPn1B3uLhh3YiVmdX 2CDn19jgZfTu7uxVpWSwdoSXUUBQ 21kG63jZ76kVR5Vo524pF6N5i3ic Gpzx89oL8VH2WYeEJpjXxptkStn FTGjg1GapRwiozjd1SfhjJnbHzo 24nPZNN3AvF6xPcz2SW6zqLNtxdY bgUstoF2qZGXu9CxZRYtSQdEgeG 3MoWbck1FVRG25XiNHag4izs6WsM aWM7qt9vZRCsQ5n4Ng1weKQ43CC</functions>
    <variables>sNY3dsU4UAyb4EjHTKmBWo2kzop</variables>
    <concepts>4KGHJcM6iTDqwJ5vLjwuLuJupgcF 2GXSNe4AE7oFD4A2aNgomRrfF1wn F1PcNrb266QTvLzxfkDRgzGToUv dAG2ho38s3ksqurThnkeRjF2TYa 4QZ1Z6K4cf4Qq83dY1NJEvAFeCh5 8N5rBmbi6jZRkTuVoojD6mg5osd 2dXupK2fdLoYaK4pNQ6vhBV8gv5n 2XAMA2DdGng1p1DGNyqaRzm7aMYz xcKPFX8XWNfrtcdtHcai9d2FUhE 3RskANAdvk9Nb1FxKE9d65u3zYLW</concepts>
    <guides>3WKoYN683iyDTkWyrptr3vz6xu2t</guides>
  </members>
</namespace>
<namespace>
  <name>detail</name>
  <anchor>detail</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/constrained.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
        <lineNumber>113</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>196</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>357</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>508</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>108</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>398</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>namespace</kind>
  <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
  <extraction>implementation-defined</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Implementation details of the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std-format-spec</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> parsing/formatting utilities.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <members>
    <typedefs>2P1fr8Uv22MRvaR9kB3K2wPUB18r</typedefs>
  </members>
</namespace>
<typedef>
  <name>integral_op_result_t</name>
  <anchor>integral_op_result_t</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>410</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
  <extraction>implementation-defined</extraction>
  <parent>r7u95SEarQA16WhciqdtyGPBBE1</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The result type of a binary arithmetic operation between </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>A</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> and </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>B</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, after integral promotion.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the first operand&apos;s integral type</literal>
          </text>
        </children>
        <name>A</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the second operand&apos;s integral type</literal>
          </text>
        </children>
        <name>B</name>
      </tParam>
    </tparams>
  </doc>
  <type>
    <decltype>
      <kind>decltype</kind>
      <operand>A{} + B{}</operand>
    </decltype>
  </type>
  <isUsing/>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>A</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3FpKAfeBwKLVhB4psLLXoU72e1a4</id>
            <identifier>integral</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>B</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3FpKAfeBwKLVhB4psLLXoU72e1a4</id>
            <identifier>integral</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
</typedef>
<typedef>
  <name>safe_i16</name>
  <anchor>safe_i16</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>1557</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>4Wd9KADHDRqXzd5dKGd1ghRutSid</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> wrapping </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::int16_t</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2HajvNXzJnNTpBjbwtgpkK8fPdGx</id>
                      <identifier>int16_t</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>safe_i32</name>
  <anchor>safe_i32</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>1559</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>3yJx3HzFLwmQBaEsjfSC3Grikt4h</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> wrapping </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::int32_t</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <id>3nZHsqHVAdnjionKMyHFitzHtez</id>
                      <identifier>int32_t</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>safe_i64</name>
  <anchor>safe_i64</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>1561</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>4LkJzsVRxcqkwJFyFBdewVnrckPp</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> wrapping </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::int64_t</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <id>X6USzDWePR9gRkX4DUZ11PfjMow</id>
                      <identifier>int64_t</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>safe_i8</name>
  <anchor>safe_i8</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>1555</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>3MeSZjvyhT5WiVsJwXcAUYh11Nv3</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> wrapping </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::int8_t</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2QrdNTAwvAgZKS48NYJmN5ZojAGy</id>
                      <identifier>int8_t</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>safe_u16</name>
  <anchor>safe_u16</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>1566</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>3WxuMseiqThJiqJayEGE4aDWyQi2</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> wrapping </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::uint16_t</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <id>w7yWEPLwtMpd5GnNHsV5ASwVxkX</id>
                      <identifier>uint16_t</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>safe_u32</name>
  <anchor>safe_u32</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>1568</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>3jSykxsiHLgqWeaNqixdguo3b53M</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> wrapping </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::uint32_t</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <id>9dKgjCpBHJzdNem8yS7cYHGEi1S</id>
                      <identifier>uint32_t</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>safe_u64</name>
  <anchor>safe_u64</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>1570</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>48QEX4B92YUVKnA3Hd5HYbeZSjj3</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> wrapping </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::uint64_t</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <id>enwWZFN2wfrW91K9GsMrvTw5eKa</id>
                      <identifier>uint64_t</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>safe_u8</name>
  <anchor>safe_u8</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>1564</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>scNwWxWE8yPLVqub1y73E9RsYAY</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> wrapping </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::uint8_t</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2tsUc2es9auoK5sHxz7Dn97FYmUN</id>
                      <identifier>uint8_t</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<record>
  <name>constrained</name>
  <anchor>constrained</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>229</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/utility/constrained.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
        <lineNumber>98</lineNumber>
        <columnNumber>17</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>This wrapper does not check anything itself. It serves as a signal to the mp-units library that domain constraint violations should be reported via the ErrorPolicy rather than through precondition checks.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>All arithmetic operations are forwarded to the underlying type T.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A transparent wrapper that carries an error policy for domain constraint enforcement.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the underlying representation type</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>policy type satisfying ConstraintPolicy (provides static on_constraint_violation(std::string_view))</literal>
          </text>
        </children>
        <name>ErrorPolicy</name>
      </tParam>
    </tparams>
    <related>
      <reference>
        <kind>reference</kind>
        <literal>operator%</literal>
        <id>49euWoxaVA2aD1Yy2SEauXiP8dvh</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>operator*</literal>
        <id>3dAsin7vntLKCN9pGhPoft6aGQGg</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>operator*</literal>
        <id>4BuxceDRHRmyZJWAcS6aJf9Zn9jv</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>operator*</literal>
        <id>4FGFG5cSzgQtpQAuBjZZqdt7aee2</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>operator+</literal>
        <id>aYNuTcSXpzSqbruEThAwxTHtBJm</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>operator+</literal>
        <id>2VsryTYAz47cz73x3ywoNcq3Yrrk</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>operator+</literal>
        <id>4YfP9iiaLgPU9Y1S52Rax6LKMPpd</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>operator-</literal>
        <id>QiceuQ3Vk4oh95oMqJtmFeSadgb</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>operator-</literal>
        <id>2AmRePuDmoApV2pViQRQqAk3nEs4</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>operator-</literal>
        <id>2gHogwV6yDDpXc4jA7zyBJwvcHoJ</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>operator/</literal>
        <id>v68zkBmQkHHHv4twCHz93EvjbB7</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>operator/</literal>
        <id>2pXqHu5vAUuEKukSezbBXC2U5ScS</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>operator/</literal>
        <id>2wqJeLF6h7EpLPprQP6jZjWbv59F</id>
      </reference>
    </related>
  </doc>
  <keyKind>class</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>ErrorPolicy</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <id>3b2TTEp3w2YWUTvFvXjvCFX9cBHK</id>
                    <identifier>throw_policy</identifier>
                  </identifier>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>F1PcNrb266QTvLzxfkDRgzGToUv</id>
            <identifier>ConstraintPolicy</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <interface>
    <public>
      <typedefs>2qMNKZrrSP3XRXnARrHz87R4FcoJ 3YBGe1rZJzCnpU1KX1q9wPHZAvaG</typedefs>
      <functions>2cs41k2N7KkvP8saFvUc1P7wvHnp 38bMbyCWUJP4JbsyKmMtMXvNaZ8G RmtX9Jr93d3zXrrHFZRNC9g9GTU 4DyfSmJWKd8fzsk1DWTdVD3KNC3U vvzHv6eu6FaPsiysLxqsa9g6bMn 3xXJsYR265pUQo8FkHaQrcD1G8JT snaGWeqqCtfa46HjW7y1QM92aFB nW8tUZNRZDYg5zJHrzuik9BNr2o 34Yn8kUaoBYQzuhHyNcmum2DSpqz 3LMFDJjZsqk8f9DjBtW7dNQjsnrF</functions>
      <variables>6x7r3xrWbTth7sKh9JmKZGRQW8u</variables>
    </public>
  </interface>
  <friends>
    <friendInfo>
      <id>3vEarXcTxF5h5qrTZFtVqoCjH9Jt</id>
    </friendInfo>
    <friendInfo>
      <id>3jNG5eg5mV2U7KZFVejSWNBU7oFG</id>
    </friendInfo>
  </friends>
</record>
<typedef>
  <name>error_policy</name>
  <anchor>error_policy</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/constrained.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
        <lineNumber>244</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>2qMNKZrrSP3XRXnARrHz87R4FcoJ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The policy used to report domain constraint violations</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>ErrorPolicy</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>value_type</name>
  <anchor>value_type</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/constrained.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
        <lineNumber>241</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>3YBGe1rZJzCnpU1KX1q9wPHZAvaG</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The underlying representation type</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>T</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<overloads>
  <name>constrained</name>
  <anchor>2constructor-0742</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>247</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2cs41k2N7KkvP8saFvUc1P7wvHnp</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructors</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to wrap</literal>
          </text>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>constructor</funcClass>
  <members>2dU2xkSB9CQYBxv8Vm64cUGLrGjV 3Fk2F2MvQbqvSWF7NubP1qbvTb89</members>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
</overloads>
<function>
  <name>constrained</name>
  <anchor>2constructor-074e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>247</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2dU2xkSB9CQYBxv8Vm64cUGLrGjV</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Default-constructs the wrapped value.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <funcClass>constructor</funcClass>
  <isDefaulted/>
  <isExplicitlyDefaulted/>
  <isRecordMethod/>
</function>
<function>
  <name>constrained</name>
  <anchor>2constructor-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>253</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3Fk2F2MvQbqvSWF7NubP1qbvTb89</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs the wrapper from a value of the underlying type.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to wrap</literal>
          </text>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>T</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>v</name>
    </param>
  </params>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>operator%=</name>
  <anchor>operator_mod_eq</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>402</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>38bMbyCWUJP4JbsyKmMtMXvNaZ8G</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Assigns the wrapped value to its remainder with respect to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rhs.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the modulo operation</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the divisor</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires(T&amp; a, const T b) {
      { a %= b } -&gt; std::same_as&lt;T&amp;&gt;;
    }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>%=</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator*=</name>
  <anchor>operator_star_eq</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>374</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>RmtX9Jr93d3zXrrHFZRNC9g9GTU</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplies the wrapped value by </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rhs.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the multiplication</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to multiply by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires(T&amp; a, const T b) {
      { a *= b } -&gt; std::same_as&lt;T&amp;&gt;;
    }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*=</overloadedOperator>
  <isRecordMethod/>
</function>
<overloads>
  <name>operator++</name>
  <anchor>operator_inc-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>299</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>4DyfSmJWKd8fzsk1DWTdVD3KNC3U</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Increment operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after incrementing</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value before incrementing, wrapped in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>constrained</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>unused; disambiguates this postfix overload from the prefix </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>operator++()</literal>
              </text>
            </children>
          </code>
        </children>
        <name>tag</name>
      </param>
    </params>
  </doc>
  <funcClass>normal</funcClass>
  <overloadedOperator>++</overloadedOperator>
  <members>jMzXVycMbnvYe2FxBpx4Zx9obnt 2tw6Jv3yva5TWwdaJiXTJisCaBg3</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator++</name>
  <anchor>operator_inc-03</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>299</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>jMzXVycMbnvYe2FxBpx4Zx9obnt</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Pre-increments the wrapped value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after incrementing</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>requires(T&amp; v) {
      { ++v } -&gt; std::same_as&lt;T&amp;&gt;;
    }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>++</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator++</name>
  <anchor>operator_inc-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>313</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2tw6Jv3yva5TWwdaJiXTJisCaBg3</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Post-increments the wrapped value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value before incrementing, wrapped in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>constrained</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>unused; disambiguates this postfix overload from the prefix </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>operator++()</literal>
              </text>
            </children>
          </code>
        </children>
        <name>tag</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
          <identifier>constrained</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>std::declval&lt;T&amp;&gt;()++</operand>
                </decltype>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>int</identifier>
            </identifier>
          </name>
          <fundamentalType>int</fundamentalType>
        </named>
      </type>
      <name>tag</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>++</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator+=</name>
  <anchor>operator_plus_eq</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>346</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>vvzHv6eu6FaPsiysLxqsa9g6bMn</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Adds </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rhs</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> to the wrapped value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the addition</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to add</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires(T&amp; a, const T b) {
      { a += b } -&gt; std::same_as&lt;T&amp;&gt;;
    }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+=</overloadedOperator>
  <isRecordMethod/>
</function>
<overloads>
  <name>operator--</name>
  <anchor>operator_dec-0d4</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>320</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>3xXJsYR265pUQo8FkHaQrcD1G8JT</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Decrement operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after decrementing</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value before decrementing, wrapped in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>constrained</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>unused; disambiguates this postfix overload from the prefix </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>operator--()</literal>
              </text>
            </children>
          </code>
        </children>
        <name>tag</name>
      </param>
    </params>
  </doc>
  <funcClass>normal</funcClass>
  <overloadedOperator>--</overloadedOperator>
  <members>41uXXXby19Co2xDzGJkJK2cQ85Mf 382Y4FjcGMtZ5h922m3JZ5X2RF9N</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator--</name>
  <anchor>operator_dec-0d8</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>320</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>41uXXXby19Co2xDzGJkJK2cQ85Mf</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Pre-decrements the wrapped value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after decrementing</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>requires(T&amp; v) {
      { --v } -&gt; std::same_as&lt;T&amp;&gt;;
    }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>--</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator--</name>
  <anchor>operator_dec-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>334</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>382Y4FjcGMtZ5h922m3JZ5X2RF9N</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Post-decrements the wrapped value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value before decrementing, wrapped in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>constrained</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>unused; disambiguates this postfix overload from the prefix </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>operator--()</literal>
              </text>
            </children>
          </code>
        </children>
        <name>tag</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
          <identifier>constrained</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>std::declval&lt;T&amp;&gt;()--</operand>
                </decltype>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>int</identifier>
            </identifier>
          </name>
          <fundamentalType>int</fundamentalType>
        </named>
      </type>
      <name>tag</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>--</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator-=</name>
  <anchor>operator_minus_eq</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>360</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>snaGWeqqCtfa46HjW7y1QM92aFB</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Subtracts </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rhs</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from the wrapped value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the subtraction</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to subtract</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires(T&amp; a, const T b) {
      { a -= b } -&gt; std::same_as&lt;T&amp;&gt;;
    }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-=</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator/=</name>
  <anchor>operator_slash_eq</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>388</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>nW8tUZNRZDYg5zJHrzuik9BNr2o</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Divides the wrapped value by </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rhs.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the division</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to divide by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires(T&amp; a, const T b) {
      { a /= b } -&gt; std::same_as&lt;T&amp;&gt;;
    }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/=</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>value</name>
  <anchor>value</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>263</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>34Yn8kUaoBYQzuhHyNcmum2DSpqz</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The wrapped underlying value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped underlying value</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>T</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>operator T</name>
  <anchor>2conversion</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>259</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3LMFDJjZsqk8f9DjBtW7dNQjsnrF</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Implicitly converts back to the underlying representation type.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped underlying value</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>T</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>conversion</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<variable>
  <name>value_</name>
  <anchor>value_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/constrained.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
        <lineNumber>238</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>6x7r3xrWbTth7sKh9JmKZGRQW8u</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Nzx2qJ12pKf2XySPV5gB6388Ty7</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The wrapped underlying value</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>T</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>{}</initializer>
  <isRecordField/>
</variable>
<record>
  <name>fill_align_width_format_specs</name>
  <anchor>fill_align_width_format_specs</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>606</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>f5HBUavSoURn4BnnTPAePinwBE6</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The fill/align/width part of a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std-format-spec</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, as parsed by </literal>
        </text>
        <reference>
          <kind>reference</kind>
          <literal>parse_fill_align_width</literal>
          <id>Gpzx89oL8VH2WYeEJpjXxptkStn</id>
        </reference>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Char</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <interface>
    <public>
      <variables>4DTjCS3NFg6TwyWjX2vbPJhAybm8 3eq7zYPgu6JocCxBnPLSCS2jcPm5 4NkGTFSJ6B5izvDxuxPRrUr3NTVL 3A8iqfx8RFcqiZNuANy2r6xRtP4U</variables>
    </public>
  </interface>
</record>
<variable>
  <name>align</name>
  <anchor>align</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>609</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>4DTjCS3NFg6TwyWjX2vbPJhAybm8</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>f5HBUavSoURn4BnnTPAePinwBE6</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The requested alignment</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2woQWhYqRpTFSgSbfDEwwTPw6xor</id>
          <identifier>fmt_align</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>fmt_align::none</initializer>
  <isRecordField/>
  <isBitfield/>
  <bitfieldWidth>
    <written>4</written>
    <value>4</value>
  </bitfieldWidth>
</variable>
<variable>
  <name>fill</name>
  <anchor>fill</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>608</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>3eq7zYPgu6JocCxBnPLSCS2jcPm5</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>f5HBUavSoURn4BnnTPAePinwBE6</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The fill character(s), used to pad to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>width</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>64SzJH8WfiNzg8c8iZ7a8Sppiub</id>
          <identifier>fill_t</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Char</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<variable>
  <name>width</name>
  <anchor>width</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>610</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>4NkGTFSJ6B5izvDxuxPRrUr3NTVL</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>f5HBUavSoURn4BnnTPAePinwBE6</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The resolved field width</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>int</identifier>
        </identifier>
      </name>
      <fundamentalType>int</fundamentalType>
    </named>
  </type>
  <initializer>0</initializer>
  <isRecordField/>
</variable>
<variable>
  <name>width_ref</name>
  <anchor>width_ref</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>611</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>3A8iqfx8RFcqiZNuANy2r6xRtP4U</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>f5HBUavSoURn4BnnTPAePinwBE6</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A reference to a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>{}</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>-style dynamic width argument, if any</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>Ta7GV6f6RHEgC8tgs11uQqtWhc1</id>
          <identifier>fmt_arg_ref</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Char</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<record>
  <name>fill_t</name>
  <anchor>fill_t</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>150</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>64SzJH8WfiNzg8c8iZ7a8Sppiub</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The fill character(s) of a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std-format-spec</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, storing at most one Unicode code point.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Char</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <interface>
    <public>
      <functions>2bZTYU85g732ZWeMuQWeRzGBWt67 3f98ZY6sTyNjH7acuHFWarm2nz29 3KHJi91WoGnUyGbLiaVH4No6hWXG T4KebnnmJNFHhe5UmYTZhKX68gf</functions>
    </public>
  </interface>
</record>
<function>
  <name>operator=</name>
  <anchor>operator_assign</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>164</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2bZTYU85g732ZWeMuQWeRzGBWt67</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>64SzJH8WfiNzg8c8iZ7a8Sppiub</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Replaces the fill with the code point stored in </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>str.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the assignment</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the code unit sequence encoding a single fill code point</literal>
          </text>
        </children>
        <name>str</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>64SzJH8WfiNzg8c8iZ7a8Sppiub</id>
              <identifier>fill_t</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>479DxynkjrswieANT6sUuL6v9vKo</id>
              <identifier>basic_string_view</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Char</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>str</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>=</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>data</name>
  <anchor>data</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>178</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3f98ZY6sTyNjH7acuHFWarm2nz29</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>64SzJH8WfiNzg8c8iZ7a8Sppiub</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A pointer to the fill&apos;s code units.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a pointer to the fill&apos;s code units</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <pointer>
      <kind>pointer</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <isConst/>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Char</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </pointer>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<overloads>
  <name>operator[]</name>
  <anchor>operator_subs-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>185</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>3KHJi91WoGnUyGbLiaVH4No6hWXG</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>64SzJH8WfiNzg8c8iZ7a8Sppiub</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Accesses the code unit at </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>index.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to the code unit at </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>index</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the position of the code unit</literal>
          </text>
        </children>
        <name>index</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>[]</overloadedOperator>
  <members>2npAg4iLwu8Ue3jDy6PdpxR3aaEe Bum2gxEFXG3ehmRDb5EhQjb416q</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator[]</name>
  <anchor>operator_subs-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>185</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2npAg4iLwu8Ue3jDy6PdpxR3aaEe</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>64SzJH8WfiNzg8c8iZ7a8Sppiub</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Accesses the code unit at </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>index.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to the code unit at </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>index</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the position of the code unit</literal>
          </text>
        </children>
        <name>index</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Char</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
              <identifier>size_t</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <name>index</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>[]</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator[]</name>
  <anchor>operator_subs-00</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>191</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>Bum2gxEFXG3ehmRDb5EhQjb416q</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>64SzJH8WfiNzg8c8iZ7a8Sppiub</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Accesses the code unit at </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>index.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to the code unit at </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>index</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the position of the code unit</literal>
          </text>
        </children>
        <name>index</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <isConst/>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Char</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
              <identifier>size_t</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <name>index</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>[]</overloadedOperator>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>size</name>
  <anchor>size</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>175</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>T4KebnnmJNFHhe5UmYTZhKX68gf</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>64SzJH8WfiNzg8c8iZ7a8Sppiub</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The number of code units in the fill.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the number of code units in the fill</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
          <identifier>size_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<record>
  <name>fmt_arg_ref</name>
  <anchor>fmt_arg_ref</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>105</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>Ta7GV6f6RHEgC8tgs11uQqtWhc1</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A reference to a format argument, by index or (when using fmtlib) by name.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Char</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <interface>
    <public>
      <records>859F7mqoGy4rdPuXLbXaTNK9u6W</records>
      <functions>2MbrcAXCQeLmBgws9KtXwbJEKW2L 3GFM1kpAtvPoD4289sGxYKqx4dxu</functions>
      <variables>2QWSXPtRmKmqUxHH87awa7DytRWS 2boQZKHdLuhm5Qc6fEnNjmcRMkFM</variables>
    </public>
  </interface>
</record>
<record>
  <name>value</name>
  <anchor>value</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>110</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>859F7mqoGy4rdPuXLbXaTNK9u6W</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Ta7GV6f6RHEgC8tgs11uQqtWhc1</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Stores either the referenced argument&apos;s index or (when using fmtlib) its name.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>union</keyKind>
  <interface>
    <public>
      <functions>3wjpRV82hwoEeXJfnEkFprgxEYCY</functions>
      <variables>oTJ9ZTXwhqKUPmZWbsiqiFiUBRD</variables>
    </public>
  </interface>
</record>
<overloads>
  <name>value</name>
  <anchor>2constructor-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>118</lineNumber>
      <columnNumber>5</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>3wjpRV82hwoEeXJfnEkFprgxEYCY</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>859F7mqoGy4rdPuXLbXaTNK9u6W</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructors</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the argument index to store</literal>
          </text>
        </children>
        <name>idx</name>
      </param>
    </params>
  </doc>
  <funcClass>constructor</funcClass>
  <members>36Gd99cav2bZSwCiE96sZkc7ZW7u 4L96zqVMqWR4erXoQur8yZTw9TDi</members>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
</overloads>
<function>
  <name>value</name>
  <anchor>2constructor-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>118</lineNumber>
      <columnNumber>5</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>36Gd99cav2bZSwCiE96sZkc7ZW7u</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>859F7mqoGy4rdPuXLbXaTNK9u6W</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Default-constructs the union with the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>index</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> alternative active, set to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>0</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>value</name>
  <anchor>2constructor-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>121</lineNumber>
      <columnNumber>5</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4L96zqVMqWR4erXoQur8yZTw9TDi</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>859F7mqoGy4rdPuXLbXaTNK9u6W</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs the union with the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>index</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> alternative active, set to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>idx.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the argument index to store</literal>
          </text>
        </children>
        <name>idx</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>int</identifier>
            </identifier>
          </name>
          <fundamentalType>int</fundamentalType>
        </named>
      </type>
      <name>idx</name>
    </param>
  </params>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<variable>
  <name>index</name>
  <anchor>index</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>112</lineNumber>
        <columnNumber>5</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>oTJ9ZTXwhqKUPmZWbsiqiFiUBRD</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>859F7mqoGy4rdPuXLbXaTNK9u6W</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The referenced argument&apos;s index, active when </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>kind == fmt_arg_id_kind::index</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>int</identifier>
        </identifier>
      </name>
      <fundamentalType>int</fundamentalType>
    </named>
  </type>
  <initializer>0</initializer>
  <isRecordField/>
  <isVariant/>
</variable>
<overloads>
  <name>fmt_arg_ref</name>
  <anchor>2constructor-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>128</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2MbrcAXCQeLmBgws9KtXwbJEKW2L</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Ta7GV6f6RHEgC8tgs11uQqtWhc1</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructors</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the index of the referenced argument</literal>
          </text>
        </children>
        <name>index</name>
      </param>
    </params>
  </doc>
  <funcClass>constructor</funcClass>
  <members>3noMtkNheT4u7qAjvtqP667E3Jtb XyHToScE7br6bUkPHmMWtJ2ubb7</members>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
</overloads>
<function>
  <name>fmt_arg_ref</name>
  <anchor>2constructor-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>128</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3noMtkNheT4u7qAjvtqP667E3Jtb</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Ta7GV6f6RHEgC8tgs11uQqtWhc1</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Default-constructs a reference that does not point to any argument (</literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>kind == fmt_arg_id_kind::none</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>).</literal>
        </text>
      </children>
    </brief>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <funcClass>constructor</funcClass>
  <isDefaulted/>
  <isExplicitlyDefaulted/>
  <isRecordMethod/>
</function>
<function>
  <name>fmt_arg_ref</name>
  <anchor>2constructor-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>131</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>XyHToScE7br6bUkPHmMWtJ2ubb7</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Ta7GV6f6RHEgC8tgs11uQqtWhc1</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a reference to the argument at </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>index.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the index of the referenced argument</literal>
          </text>
        </children>
        <name>index</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>int</identifier>
            </identifier>
          </name>
          <fundamentalType>int</fundamentalType>
        </named>
      </type>
      <name>index</name>
    </param>
  </params>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>operator=</name>
  <anchor>operator_assign</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>141</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3GFM1kpAtvPoD4289sGxYKqx4dxu</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Ta7GV6f6RHEgC8tgs11uQqtWhc1</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Rebinds this reference to the argument at </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>idx.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the assignment</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the index of the argument to reference</literal>
          </text>
        </children>
        <name>idx</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>Ta7GV6f6RHEgC8tgs11uQqtWhc1</id>
              <identifier>fmt_arg_ref</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>int</identifier>
            </identifier>
          </name>
          <fundamentalType>int</fundamentalType>
        </named>
      </type>
      <name>idx</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>=</overloadedOperator>
  <isRecordMethod/>
</function>
<variable>
  <name>kind</name>
  <anchor>kind</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>108</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>2QWSXPtRmKmqUxHH87awa7DytRWS</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Ta7GV6f6RHEgC8tgs11uQqtWhc1</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Which alternative of </literal>
        </text>
        <reference>
          <kind>reference</kind>
          <literal>value</literal>
          <id>859F7mqoGy4rdPuXLbXaTNK9u6W</id>
        </reference>
        <text>
          <kind>text</kind>
          <literal> is active.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2o5SENx17YPyf7nRPA8itqsH37Mg</id>
          <identifier>fmt_arg_id_kind</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>fmt_arg_id_kind::none</initializer>
  <isRecordField/>
</variable>
<variable>
  <name>val</name>
  <anchor>val</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>110</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>2boQZKHdLuhm5Qc6fEnNjmcRMkFM</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Ta7GV6f6RHEgC8tgs11uQqtWhc1</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The referenced argument&apos;s index or (when using fmtlib) name, per </literal>
        </text>
        <reference>
          <kind>reference</kind>
          <literal>kind</literal>
          <id>2QWSXPtRmKmqUxHH87awa7DytRWS</id>
        </reference>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>859F7mqoGy4rdPuXLbXaTNK9u6W</id>
          <identifier>value</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>{}</initializer>
  <isRecordField/>
</variable>
<record>
  <name>safe_int</name>
  <anchor>safe_int-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>556</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>395</lineNumber>
        <columnNumber>17</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>This class wraps any integral type and models all requirements for mp-units representation types (RealScalar, UnitMagnitudeScalable, etc.). Every arithmetic operation checks for overflow and delegates to the ErrorPolicy::on_overflow() handler on detection.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Wraps an integral type with overflow detection.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the underlying integral type (e.g. int, long, uint32_t)</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>how to react to overflow — default: safe_int_throw_policy on hosted, safe_int_terminate_policy on freestanding</literal>
          </text>
        </children>
        <name>ErrorPolicy</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>class</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3FpKAfeBwKLVhB4psLLXoU72e1a4</id>
            <identifier>integral</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>EP</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2hxKPyghD2SSxWo9iEmTXMpbRBMA</id>
                    <identifier>safe_int_throw_policy</identifier>
                  </identifier>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>dAG2ho38s3ksqurThnkeRjF2TYa</id>
            <identifier>OverflowPolicy</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <interface>
    <public>
      <typedefs>2NEm7fkwYcNukEhziwif4PvGYZnB 28C4Agyz89nYKrSNZohHAxnLeCM5</typedefs>
      <functions>kizMdV46VigmoqPN1EFEvswsZzs 4WfNfwbA8HuDtoFFa26CXQGN8bTd 3jXrwK4JGMg15nJkzro4EjnwDdGx mAStghMhxyypJXGyk8TUfDJ5nSu 4GPcPGiA5pig7xQXCXvyDo95Qekp 2yDtWUo1SWTX2zvTv8fJN46AwjeT 2VvZCYG9frN1KqDT9vQJTiHcGEca 4SBCjwtiYSgzc3E5EYS1uxfeHT6q uz3Q2KXe6Ge5Xu4sYiwcSsPsSLm 4ALACrfw8QjMM9WeDihpYLkNqHye 1djqJdDd6T78y9cdjMzvypJjKkr 2LrkEyaqydEYHzQnu5mZQC2oCW8Y</functions>
      <variables>3k4fYBN5AtdDUyGZcv4eC9LQrhtp</variables>
    </public>
  </interface>
  <friends>
    <friendInfo>
      <id>bgUstoF2qZGXu9CxZRYtSQdEgeG</id>
    </friendInfo>
    <friendInfo>
      <id>39VcUAnfYmrvhsje2mbpQVr258w7</id>
    </friendInfo>
    <friendInfo>
      <id>2djhPVQHs53XtAPKy84eovT2xAEA</id>
    </friendInfo>
    <friendInfo>
      <id>2pXqHu5vAUuEKukSezbBXC2U5ScS</id>
    </friendInfo>
    <friendInfo>
      <id>v68zkBmQkHHHv4twCHz93EvjbB7</id>
    </friendInfo>
    <friendInfo>
      <id>4BuxceDRHRmyZJWAcS6aJf9Zn9jv</id>
    </friendInfo>
    <friendInfo>
      <id>4FGFG5cSzgQtpQAuBjZZqdt7aee2</id>
    </friendInfo>
    <friendInfo>
      <id>2gHogwV6yDDpXc4jA7zyBJwvcHoJ</id>
    </friendInfo>
    <friendInfo>
      <id>QiceuQ3Vk4oh95oMqJtmFeSadgb</id>
    </friendInfo>
    <friendInfo>
      <id>4YfP9iiaLgPU9Y1S52Rax6LKMPpd</id>
    </friendInfo>
    <friendInfo>
      <id>2VsryTYAz47cz73x3ywoNcq3Yrrk</id>
    </friendInfo>
    <friendInfo>
      <id>2Wjf5JqZSc4uCSapXw6A9PBCX9Aw</id>
    </friendInfo>
    <friendInfo>
      <id>49euWoxaVA2aD1Yy2SEauXiP8dvh</id>
    </friendInfo>
    <friendInfo>
      <id>3E2giYFdXqCB2sNt2wUZdRdYZNSn</id>
    </friendInfo>
    <friendInfo>
      <id>2wqJeLF6h7EpLPprQP6jZjWbv59F</id>
    </friendInfo>
    <friendInfo>
      <id>225eDAUPH6z3hCFQeLyciCybZAaA</id>
    </friendInfo>
    <friendInfo>
      <id>3dAsin7vntLKCN9pGhPoft6aGQGg</id>
    </friendInfo>
    <friendInfo>
      <id>3TcFxXPFaXtynFfcLj9Xh5m4US3z</id>
    </friendInfo>
    <friendInfo>
      <id>2AmRePuDmoApV2pViQRQqAk3nEs4</id>
    </friendInfo>
    <friendInfo>
      <id>2ZJWBNdGco1CmtJMG4tv7dMywxPW</id>
    </friendInfo>
    <friendInfo>
      <id>aYNuTcSXpzSqbruEThAwxTHtBJm</id>
    </friendInfo>
    <friendInfo>
      <id>UJoL1uFmv4FCNdfsitSbTnbcizb</id>
    </friendInfo>
    <friendInfo>
      <id>4B7LH2VAvubyi7CAWpZB5ZDKaDZb</id>
    </friendInfo>
    <friendInfo>
      <id>28ScSeNLpPFSb9B7a34pAS7o5e1p</id>
    </friendInfo>
    <friendInfo>
      <id>2hodrB5pEpJjNZuPVZ3hJSkVPDD6</id>
    </friendInfo>
    <friendInfo>
      <id>RBN7TjN3GgXndkDDrQQNgLmabJ2</id>
    </friendInfo>
    <friendInfo>
      <id>3L1sSHbK8MJdoYqfDiEdqYa8oz2y</id>
    </friendInfo>
    <friendInfo>
      <id>shhE6vxvEUPCD8qtYaTGxtcfEEw</id>
    </friendInfo>
    <friendInfo>
      <id>25F4gSRo6fzspxMn6dWqthcLSMyX</id>
    </friendInfo>
    <friendInfo>
      <id>4Ys1fR3ujeWWSUgUoMvddpxxNqRf</id>
    </friendInfo>
    <friendInfo>
      <id>418td5VrgHbGxfrqVKjepWQzoT1k</id>
    </friendInfo>
    <friendInfo>
      <id>37Crgot2GGASvAsMksw96uoCgFLU</id>
    </friendInfo>
    <friendInfo>
      <id>S6hoixLnZ3JhKkzZd7bzvCmGaph</id>
    </friendInfo>
    <friendInfo>
      <id>34fGFMJXaBgPqULLUfCX7cfk6CyC</id>
    </friendInfo>
    <friendInfo>
      <id>23wm1kuK2Si3peg5yDKoWPqgNosR</id>
    </friendInfo>
    <friendInfo>
      <id>ZdgiXjWyEafFCG2Q7eyR2LX53sc</id>
    </friendInfo>
    <friendInfo>
      <id>3znNmM3vs1oxmrgsFixQRo9J5emU</id>
    </friendInfo>
    <friendInfo>
      <id>XuCP6D9Fetu7dPBSewitA4rfh93</id>
    </friendInfo>
    <friendInfo>
      <id>26AVHUw8fcE7BfJo3u3ZCgtujKeP</id>
    </friendInfo>
    <friendInfo>
      <id>Yk281FTKLwiVpobAGAEVYo9vYam</id>
    </friendInfo>
    <friendInfo>
      <id>478jZWMngNaHUfTk6Xauzke6ayLq</id>
    </friendInfo>
    <friendInfo>
      <id>4FQaU721cqEqijMbtgSs2rZWrecH</id>
    </friendInfo>
    <friendInfo>
      <id>48gfz98hzc8rBkWHoY7Wwm489YxA</id>
    </friendInfo>
    <friendInfo>
      <id>2SPcJF1V6W77aFJUwbRqZSJFRXc6</id>
    </friendInfo>
    <friendInfo>
      <id>3XDwuTajqZES8GfNPgdbi9MAVbky</id>
    </friendInfo>
    <friendInfo>
      <id>3sWeKw5Cz7tVPvQD1SWQTvhUHequ</id>
    </friendInfo>
    <friendInfo>
      <id>4HmNxQPdgjqFLKQHVAMZVhBb6Cit</id>
    </friendInfo>
    <friendInfo>
      <id>3jLwYrquLwg8q5u6dHHLQgMAR89g</id>
    </friendInfo>
    <friendInfo>
      <id>34mUB5yaw9DGW4tPtZGFzX5KTgjv</id>
    </friendInfo>
    <friendInfo>
      <id>RxBMeSmraNzhpeHrysjW9wdpeo2</id>
    </friendInfo>
  </friends>
  <deductionGuides>3WKoYN683iyDTkWyrptr3vz6xu2t</deductionGuides>
</record>
<typedef>
  <name>error_policy</name>
  <anchor>error_policy</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>572</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>2NEm7fkwYcNukEhziwif4PvGYZnB</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>ErrorPolicy</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> used to react to overflow.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>ErrorPolicy</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>value_type</name>
  <anchor>value_type</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>570</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>28C4Agyz89nYKrSNZohHAxnLeCM5</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The underlying integral type </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>T</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<overloads>
  <name>safe_int</name>
  <anchor>2constructor-03</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>575</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>kizMdV46VigmoqPN1EFEvswsZzs</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructors</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to convert from</literal>
          </text>
        </children>
        <name>other</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to convert from</literal>
          </text>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>constructor</funcClass>
  <members>JD7TngbK8gR2tZ1FrmKpaLvkybQ 2WrvgwPyDJ4nVZqLvxDEAGSQnnX9 3X4QPuwws7cCZjRHTRKDJw2AH8vZ</members>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
</overloads>
<function>
  <name>safe_int</name>
  <anchor>2constructor-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>575</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>JD7TngbK8gR2tZ1FrmKpaLvkybQ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Default-constructs a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> holding a value-initialized </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <funcClass>constructor</funcClass>
  <isDefaulted/>
  <isExplicitlyDefaulted/>
  <isRecordMethod/>
</function>
<function>
  <name>safe_int</name>
  <anchor>2constructor-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>594</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2WrvgwPyDJ4nVZqLvxDEAGSQnnX9</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int&lt;T, ErrorPolicy&gt;</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> wrapping a different integral type, checking for overflow.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to convert from</literal>
          </text>
        </children>
        <name>other</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>U</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>ErrorPolicy</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>other</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3FpKAfeBwKLVhB4psLLXoU72e1a4</id>
            <identifier>integral</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>safe_int</name>
  <anchor>2constructor-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>581</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3X4QPuwws7cCZjRHTRKDJw2AH8vZ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a non-floating-point value, checking for overflow.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to convert from</literal>
          </text>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>U</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>v</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>(!treat_as_floating_point&lt;std::remove_cvref_t&lt;U&gt;&gt;) &amp;&amp; std::is_constructible_v&lt;T, U&gt;</requires>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>operator%=</name>
  <anchor>operator_mod_eq</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>748</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4WfNfwbA8HuDtoFFa26CXQGN8bTd</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Replaces the wrapped value with its remainder after division by </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rhs,</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> reacting to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>ErrorPolicy</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> on division by zero.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the modulo operation</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to divide by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>%=</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator*=</name>
  <anchor>operator_star_eq</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>723</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3jXrwK4JGMg15nJkzro4EjnwDdGx</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplies the wrapped value by </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rhs,</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> reacting to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>ErrorPolicy</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> on overflow.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the multiplication</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to multiply by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*=</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>621</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>mAStghMhxyypJXGyk8TUfDJ5nSu</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns a copy of the wrapped value, promoted as </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>+value_</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> would promote </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the (possibly promoted) wrapped value</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>+value_</operand>
                </decltype>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
  <isRecordMethod/>
  <isConst/>
</function>
<overloads>
  <name>operator++</name>
  <anchor>operator_inc-0ea</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>643</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>4GPcPGiA5pig7xQXCXvyDo95Qekp</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Increment operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the increment</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a copy of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, before the increment</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>unused tag parameter that distinguishes this postfix form from the prefix </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>operator++()</literal>
              </text>
            </children>
          </code>
        </children>
        <name>tag</name>
      </param>
    </params>
  </doc>
  <funcClass>normal</funcClass>
  <overloadedOperator>++</overloadedOperator>
  <members>2sKz7EbZt2FDm2hVDDuD37Afr4Z5 4LWGKSvHXc8MchQ7sRY7g8bRufBE</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator++</name>
  <anchor>operator_inc-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>643</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2sKz7EbZt2FDm2hVDDuD37Afr4Z5</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Pre-increments the wrapped value, reacting to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>ErrorPolicy</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> on overflow.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the increment</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>++</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator++</name>
  <anchor>operator_inc-0ef</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>656</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4LWGKSvHXc8MchQ7sRY7g8bRufBE</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Post-increments the wrapped value, reacting to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>ErrorPolicy</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> on overflow.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a copy of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, before the increment</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>unused tag parameter that distinguishes this postfix form from the prefix </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>operator++()</literal>
              </text>
            </children>
          </code>
        </children>
        <name>tag</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>int</identifier>
            </identifier>
          </name>
          <fundamentalType>int</fundamentalType>
        </named>
      </type>
      <name>tag</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>++</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator+=</name>
  <anchor>operator_plus_eq</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>699</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2yDtWUo1SWTX2zvTv8fJN46AwjeT</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Adds </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rhs</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> to the wrapped value, reacting to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>ErrorPolicy</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> on overflow.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the addition</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to add</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+=</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>631</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2VvZCYG9frN1KqDT9vQJTiHcGEca</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the negation of the wrapped value, reacting to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>ErrorPolicy</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> on overflow.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the negated (and possibly promoted) wrapped value</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>-value_</operand>
                </decltype>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
  <isRecordMethod/>
  <isConst/>
</function>
<overloads>
  <name>operator--</name>
  <anchor>operator_dec-0f6</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>667</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>4SBCjwtiYSgzc3E5EYS1uxfeHT6q</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Decrement operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the decrement</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a copy of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, before the decrement</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>unused tag parameter that distinguishes this postfix form from the prefix </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>operator--()</literal>
              </text>
            </children>
          </code>
        </children>
        <name>tag</name>
      </param>
    </params>
  </doc>
  <funcClass>normal</funcClass>
  <overloadedOperator>--</overloadedOperator>
  <members>4VoNMo1ykKrkmfL66FfkdvvS1X3j 4CB5WzEURjTmthk5KyNmnuCLHiz9</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator--</name>
  <anchor>operator_dec-0fa</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>667</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4VoNMo1ykKrkmfL66FfkdvvS1X3j</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Pre-decrements the wrapped value, reacting to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>ErrorPolicy</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> on overflow.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the decrement</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>--</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator--</name>
  <anchor>operator_dec-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>680</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4CB5WzEURjTmthk5KyNmnuCLHiz9</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Post-decrements the wrapped value, reacting to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>ErrorPolicy</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> on overflow.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a copy of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, before the decrement</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>unused tag parameter that distinguishes this postfix form from the prefix </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>operator--()</literal>
              </text>
            </children>
          </code>
        </children>
        <name>tag</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>int</identifier>
            </identifier>
          </name>
          <fundamentalType>int</fundamentalType>
        </named>
      </type>
      <name>tag</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>--</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator-=</name>
  <anchor>operator_minus_eq</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>711</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>uz3Q2KXe6Ge5Xu4sYiwcSsPsSLm</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Subtracts </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rhs</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from the wrapped value, reacting to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>ErrorPolicy</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> on overflow.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the subtraction</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to subtract</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-=</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator/=</name>
  <anchor>operator_slash_eq</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>735</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4ALACrfw8QjMM9WeDihpYLkNqHye</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Divides the wrapped value by </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rhs,</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> reacting to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>ErrorPolicy</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> on overflow or division by zero.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the division</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to divide by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/=</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>value</name>
  <anchor>value</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>609</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>1djqJdDd6T78y9cdjMzvypJjKkr</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the wrapped value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped value</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>T</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>operator T</name>
  <anchor>2conversion</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>604</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2LrkEyaqydEYHzQnu5mZQC2oCW8Y</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Converts to the wrapped value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped value, converted to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>T</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>conversion</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<variable>
  <name>value_</name>
  <anchor>value_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>568</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>3k4fYBN5AtdDUyGZcv4eC9LQrhtp</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2eE7JCvWEwV5xehQ4sPN31PxLGJc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The wrapped value.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>T</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>{}</initializer>
  <isRecordField/>
</variable>
<record>
  <name>safe_int_terminate_policy</name>
  <anchor>safe_int_terminate_policy</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>73</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2vvaRWZoRXxphRJnVxcaTThUtWo9</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Error policy that terminates the program on overflow (always available, freestanding-safe).</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>34kSk3sx7tXSwi2JrpezzPQspmjw</id>
              <identifier>terminate_policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/utility/safe_int.h</shortPath>
          <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
          <lineNumber>73</lineNumber>
          <columnNumber>52</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <staticFunctions>2CxorHZL4Emr5xKyv2QgVw1buWoV 2sZ13Cd3u2xpSNC6UmCVEorftv4C</staticFunctions>
    </public>
  </interface>
</record>
<function>
  <name>on_constraint_violation</name>
  <anchor>on_constraint_violation</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>80</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2CxorHZL4Emr5xKyv2QgVw1buWoV</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>34kSk3sx7tXSwi2JrpezzPQspmjw</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Reports a constraint violation by terminating the program.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>description of the violated constraint (unused; the program terminates regardless)</literal>
          </text>
        </children>
        <name>msg</name>
      </param>
    </params>
  </doc>
  <attributes>
    <noreturn>
      <kind>noreturn</kind>
      <name>noreturn</name>
    </noreturn>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3HPgS7y35hBasNYbXshp29ttUeAe</id>
              <identifier>string_view</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <name>msg</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <storageClass>static</storageClass>
  <isRecordMethod/>
</function>
<function>
  <name>on_overflow</name>
  <anchor>on_overflow</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>78</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2sZ13Cd3u2xpSNC6UmCVEorftv4C</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vvaRWZoRXxphRJnVxcaTThUtWo9</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Terminates the program by aborting; called by </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> on overflow.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>description of the overflow condition (unused; the program aborts unconditionally)</literal>
          </text>
        </children>
        <name>msg</name>
      </param>
    </params>
  </doc>
  <attributes>
    <noreturn>
      <kind>noreturn</kind>
      <name>noreturn</name>
    </noreturn>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3HPgS7y35hBasNYbXshp29ttUeAe</id>
              <identifier>string_view</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <name>msg</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <storageClass>static</storageClass>
  <isRecordMethod/>
</function>
<record>
  <name>safe_int_throw_policy</name>
  <anchor>safe_int_throw_policy</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>86</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2hxKPyghD2SSxWo9iEmTXMpbRBMA</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Error policy that throws std::overflow_error on overflow (hosted only).</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3b2TTEp3w2YWUTvFvXjvCFX9cBHK</id>
              <identifier>throw_policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/utility/safe_int.h</shortPath>
          <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
          <lineNumber>86</lineNumber>
          <columnNumber>48</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <staticFunctions>2tqeV1HJdtcZnyYgaQa8p9YVyWYx SMVJmiiJmPM2jNYaqTqPuUxEvhd</staticFunctions>
    </public>
  </interface>
</record>
<function>
  <name>on_constraint_violation</name>
  <anchor>on_constraint_violation</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>93</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2tqeV1HJdtcZnyYgaQa8p9YVyWYx</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3b2TTEp3w2YWUTvFvXjvCFX9cBHK</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Reports a constraint violation by throwing </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::domain_error</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>description of the violated constraint</literal>
          </text>
        </children>
        <name>msg</name>
      </param>
    </params>
  </doc>
  <attributes>
    <noreturn>
      <kind>noreturn</kind>
      <name>noreturn</name>
    </noreturn>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3HPgS7y35hBasNYbXshp29ttUeAe</id>
              <identifier>string_view</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <name>msg</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <storageClass>static</storageClass>
  <isRecordMethod/>
</function>
<function>
  <name>on_overflow</name>
  <anchor>on_overflow</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>91</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>SMVJmiiJmPM2jNYaqTqPuUxEvhd</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2hxKPyghD2SSxWo9iEmTXMpbRBMA</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Throws </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::overflow_error</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>; called by </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> on overflow.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>description of the overflow condition</literal>
          </text>
        </children>
        <name>msg</name>
      </param>
    </params>
  </doc>
  <attributes>
    <noreturn>
      <kind>noreturn</kind>
      <name>noreturn</name>
    </noreturn>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3HPgS7y35hBasNYbXshp29ttUeAe</id>
              <identifier>string_view</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <name>msg</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <storageClass>static</storageClass>
  <isRecordMethod/>
</function>
<record>
  <name>terminate_policy</name>
  <anchor>terminate_policy</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>75</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>34kSk3sx7tXSwi2JrpezzPQspmjw</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Error policy that terminates the program on constraint violation (freestanding-safe).</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <derived>2vvaRWZoRXxphRJnVxcaTThUtWo9</derived>
  <interface>
    <public>
      <staticFunctions>2CxorHZL4Emr5xKyv2QgVw1buWoV</staticFunctions>
    </public>
  </interface>
</record>
<function>
  <name>on_constraint_violation</name>
  <anchor>on_constraint_violation</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>80</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2CxorHZL4Emr5xKyv2QgVw1buWoV</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>34kSk3sx7tXSwi2JrpezzPQspmjw</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Reports a constraint violation by terminating the program.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>description of the violated constraint (unused; the program terminates regardless)</literal>
          </text>
        </children>
        <name>msg</name>
      </param>
    </params>
  </doc>
  <attributes>
    <noreturn>
      <kind>noreturn</kind>
      <name>noreturn</name>
    </noreturn>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3HPgS7y35hBasNYbXshp29ttUeAe</id>
              <identifier>string_view</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <name>msg</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <storageClass>static</storageClass>
  <isRecordMethod/>
</function>
<record>
  <name>throw_policy</name>
  <anchor>throw_policy</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>88</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3b2TTEp3w2YWUTvFvXjvCFX9cBHK</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Error policy that throws std::domain_error on constraint violation (hosted only).</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <derived>2hxKPyghD2SSxWo9iEmTXMpbRBMA</derived>
  <interface>
    <public>
      <staticFunctions>2tqeV1HJdtcZnyYgaQa8p9YVyWYx</staticFunctions>
    </public>
  </interface>
</record>
<function>
  <name>on_constraint_violation</name>
  <anchor>on_constraint_violation</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>93</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2tqeV1HJdtcZnyYgaQa8p9YVyWYx</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3b2TTEp3w2YWUTvFvXjvCFX9cBHK</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Reports a constraint violation by throwing </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::domain_error</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>description of the violated constraint</literal>
          </text>
        </children>
        <name>msg</name>
      </param>
    </params>
  </doc>
  <attributes>
    <noreturn>
      <kind>noreturn</kind>
      <name>noreturn</name>
    </noreturn>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3HPgS7y35hBasNYbXshp29ttUeAe</id>
              <identifier>string_view</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <name>msg</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <storageClass>static</storageClass>
  <isRecordMethod/>
</function>
<record>
  <name>unspecified_t</name>
  <anchor>unspecified_t</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/unspecified.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/unspecified.h</sourcePath>
      <lineNumber>46</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>ktnRPuWZy1tNGnc2XX5w6ozA1h3</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A variable template cannot be </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>= delete</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>d the way a function can, so a customization point that must be specialized before use defaults to an object of this type, and a specialization replaces it with a real value. #specified reports whether that has happened.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Sentinel type for a specializable variable-template customization point with no usable default.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
</record>
<record>
  <name>width_checker</name>
  <anchor>width_checker</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>306</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>QzY7vwpxHsx4hyVBoBhC8ExSLeo</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Handler</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> for </literal>
        </text>
        <reference>
          <kind>reference</kind>
          <literal>handle_dynamic_spec</literal>
          <id>3kvJHC4TUh5X2N1r44MbL13mdW5H</id>
        </reference>
        <text>
          <kind>text</kind>
          <literal> that validates and extracts a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>width</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> argument.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <interface>
    <public>
      <functions>2iGS6JR3bGFuBVGcK8DCW3vaEzY9</functions>
    </public>
  </interface>
</record>
<function>
  <name>operator()</name>
  <anchor>operator_call</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>312</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2iGS6JR3bGFuBVGcK8DCW3vaEzY9</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>QzY7vwpxHsx4hyVBoBhC8ExSLeo</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Validates that </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>value</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is a nonnegative integer and returns it as </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>unsigned long long</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>value</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> converted to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>unsigned long long</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the resolved format argument to validate</literal>
          </text>
        </children>
        <name>value</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>unsigned long long</identifier>
        </identifier>
      </name>
      <fundamentalType>unsigned long long</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>T</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>value</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
  <isConst/>
</function>
<enum>
  <name>fmt_align</name>
  <anchor>fmt_align</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>79</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>enum</kind>
  <id>2woQWhYqRpTFSgSbfDEwwTPw6xor</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The alignment option of a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std-format-spec</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>&apos;s fill/align part.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <scoped/>
  <underlyingType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2QrdNTAwvAgZKS48NYJmN5ZojAGy</id>
          <identifier>int8_t</identifier>
        </identifier>
      </name>
    </named>
  </underlyingType>
  <constants>3Uj9WtN9kZgjpr3u481DZmV7bNDR uWmBTG9uqjyr3Q3W7Lh5pytQA89 2iP6CSRJdX5zuXiL9VVynVMnJNyh cS67aHUtjkkPZdXrBANwCXS3nLb 4GHc3hnYJMXoyUKzQ66TyEztxoqr</constants>
</enum>
<enumConstant>
  <name>none</name>
  <anchor>none</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>81</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>3Uj9WtN9kZgjpr3u481DZmV7bNDR</id>
  <extraction>regular</extraction>
  <parent>2woQWhYqRpTFSgSbfDEwwTPw6xor</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>No alignment was specified.</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enumConstant>
  <name>left</name>
  <anchor>left</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>83</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>uWmBTG9uqjyr3Q3W7Lh5pytQA89</id>
  <extraction>regular</extraction>
  <parent>2woQWhYqRpTFSgSbfDEwwTPw6xor</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Left alignment (</literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>&lt;</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>).</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enumConstant>
  <name>right</name>
  <anchor>right</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>85</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>2iP6CSRJdX5zuXiL9VVynVMnJNyh</id>
  <extraction>regular</extraction>
  <parent>2woQWhYqRpTFSgSbfDEwwTPw6xor</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Right alignment (</literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>&gt;</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>).</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enumConstant>
  <name>center</name>
  <anchor>center</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>87</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>cS67aHUtjkkPZdXrBANwCXS3nLb</id>
  <extraction>regular</extraction>
  <parent>2woQWhYqRpTFSgSbfDEwwTPw6xor</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Center alignment (</literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>^</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>).</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enumConstant>
  <name>numeric</name>
  <anchor>numeric</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>89</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>4GHc3hnYJMXoyUKzQ66TyEztxoqr</id>
  <extraction>regular</extraction>
  <parent>2woQWhYqRpTFSgSbfDEwwTPw6xor</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Alignment defaulting to right for non-string types and applying to the sign/prefix (</literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>=</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>).</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enum>
  <name>fmt_arg_id_kind</name>
  <anchor>fmt_arg_id_kind</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>93</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>enum</kind>
  <id>2o5SENx17YPyf7nRPA8itqsH37Mg</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Which alternative of </literal>
        </text>
        <reference>
          <kind>reference</kind>
          <literal>fmt_arg_ref::value</literal>
          <id>859F7mqoGy4rdPuXLbXaTNK9u6W</id>
        </reference>
        <text>
          <kind>text</kind>
          <literal> is active.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <scoped/>
  <underlyingType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2QrdNTAwvAgZKS48NYJmN5ZojAGy</id>
          <identifier>int8_t</identifier>
        </identifier>
      </name>
    </named>
  </underlyingType>
  <constants>2PLE36SZpdcUBzzFxDtR19n1MFy8 2ceNfjyr7TQRNRBhXa538HtbwTWZ</constants>
</enum>
<enumConstant>
  <name>none</name>
  <anchor>none</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>95</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>2PLE36SZpdcUBzzFxDtR19n1MFy8</id>
  <extraction>regular</extraction>
  <parent>2o5SENx17YPyf7nRPA8itqsH37Mg</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The reference does not point to any argument.</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enumConstant>
  <name>index</name>
  <anchor>index</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/format.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
        <lineNumber>101</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>2ceNfjyr7TQRNRBhXa538HtbwTWZ</id>
  <extraction>regular</extraction>
  <parent>2o5SENx17YPyf7nRPA8itqsH37Mg</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The reference points to an argument by its index.</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<function>
  <name>at_most_one_of</name>
  <anchor>at_most_one_of</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>542</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3VGFynjYbdiEobHb8vtieBJPetiF</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Throws when more than one is used, which is how a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>format-spec</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> states that a group of modifier letters is mutually exclusive.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Finds the single modifier from </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>modifiers</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> present in [begin, end).]</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the position of the single modifier present, or </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>end</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> when there is none</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the beginning of the range to search</literal>
          </text>
        </children>
        <name>begin</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the end of the range to search</literal>
          </text>
        </children>
        <name>end</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the set of mutually exclusive modifier characters to look for</literal>
          </text>
        </children>
        <name>modifiers</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>It</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>It</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>begin</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>It</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>end</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3HPgS7y35hBasNYbXshp29ttUeAe</id>
              <identifier>string_view</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <name>modifiers</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>It</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2W2b4Pfsahi2b8ZxMQYBnzvrdpCe</id>
            <identifier>forward_iterator</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                <identifier>std</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>handle_dynamic_spec</name>
  <anchor>handle_dynamic_spec</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>286</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3kvJHC4TUh5X2N1r44MbL13mdW5H</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>If </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ref</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> does not reference an argument (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>kind == fmt_arg_id_kind::none</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>), </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>value</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is left unchanged.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Resolves a dynamic (</literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>{}</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>-style) spec against the format arguments.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the spec value to update when </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ref</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> references an argument</literal>
          </text>
        </children>
        <name>value</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to the format argument holding the dynamic value, if any</literal>
          </text>
        </children>
        <name>ref</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the format context providing access to the format arguments</literal>
          </text>
        </children>
        <name>ctx</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>int</identifier>
                </identifier>
              </name>
              <fundamentalType>int</fundamentalType>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>value</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>Ta7GV6f6RHEgC8tgs11uQqtWhc1</id>
              <identifier>fmt_arg_ref</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>char_type</identifier>
                          <prefix>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Context</identifier>
                            </identifier>
                          </prefix>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>ref</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Context</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>ctx</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Handler</name>
        <keyKind>class</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Context</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<overloads>
  <name>operator%</name>
  <anchor>operator_mod-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>831</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>4RJJ87MNDku7o8cUptU4WXtkZA3X</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Modulus operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the remainder, as a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of the promoted result type; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on modulo by zero</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the remainder of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs / rhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on modulo by zero</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped remainder of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> divisor</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>%</overloadedOperator>
  <members>34fGFMJXaBgPqULLUfCX7cfk6CyC 23wm1kuK2Si3peg5yDKoWPqgNosR 3sWeKw5Cz7tVPvQD1SWQTvhUHequ 2Wjf5JqZSc4uCSapXw6A9PBCX9Aw 49euWoxaVA2aD1Yy2SEauXiP8dvh</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator%</name>
  <anchor>operator_mod-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1039</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>34fGFMJXaBgPqULLUfCX7cfk6CyC</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the remainder of dividing an integral scalar by a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the remainder, as a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of the promoted result type; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on modulo by zero</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> divisor</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>%</overloadedOperator>
</function>
<function>
  <name>operator%</name>
  <anchor>operator_mod-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1023</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>23wm1kuK2Si3peg5yDKoWPqgNosR</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the remainder of dividing a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> by an integral scalar.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the remainder, as a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of the promoted result type; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on modulo by zero</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar divisor</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>%</overloadedOperator>
</function>
<function>
  <name>operator%</name>
  <anchor>operator_mod-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>831</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3sWeKw5Cz7tVPvQD1SWQTvhUHequ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the remainder of dividing </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>lhs</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> by </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rhs.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the remainder of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs / rhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on modulo by zero</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the dividend</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the divisor</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>%</overloadedOperator>
</function>
<function>
  <name>operator%</name>
  <anchor>operator_mod-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1382</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2Wjf5JqZSc4uCSapXw6A9PBCX9Aw</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the remainder of dividing a safe_int by a constrained value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped remainder of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to divide</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to divide by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>U</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>CP</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>%</overloadedOperator>
</function>
<function>
  <name>operator%</name>
  <anchor>operator_mod-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1368</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>49euWoxaVA2aD1Yy2SEauXiP8dvh</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the remainder of dividing a constrained value by a safe_int</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped remainder of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to divide</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to divide by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>constrained</literal>
        <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>U</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>CP</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>%</overloadedOperator>
</function>
<overloads>
  <name>operator*</name>
  <anchor>operator_star-04b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>801</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>23oGctnV2VJrZAtxT1EqucPNhQiC</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplication operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the product, as a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of the promoted result type; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the product of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and the wrapped value</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the product of the wrapped value and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the product of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped product of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to multiply by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>*</overloadedOperator>
  <members>XuCP6D9Fetu7dPBSewitA4rfh93 RBN7TjN3GgXndkDDrQQNgLmabJ2 26AVHUw8fcE7BfJo3u3ZCgtujKeP 3L1sSHbK8MJdoYqfDiEdqYa8oz2y 3jLwYrquLwg8q5u6dHHLQgMAR89g 225eDAUPH6z3hCFQeLyciCybZAaA 4BuxceDRHRmyZJWAcS6aJf9Zn9jv 3dAsin7vntLKCN9pGhPoft6aGQGg 4FGFG5cSzgQtpQAuBjZZqdt7aee2</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator*</name>
  <anchor>operator_star-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>969</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>XuCP6D9Fetu7dPBSewitA4rfh93</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplies an integral scalar by a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, checking for overflow.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the product, as a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of the promoted result type; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to multiply by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1173</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>RBN7TjN3GgXndkDDrQQNgLmabJ2</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplies a floating-point value by a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the product of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and the wrapped value</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the floating-point value</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to multiply by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a floating-point-like type (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>treat_as_floating_point&lt;U&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>)</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { lhs * static_cast&lt;U&gt;(rhs.value_); }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-04e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>951</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>26AVHUw8fcE7BfJo3u3ZCgtujKeP</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplies a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> by an integral scalar, checking for overflow.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the product, as a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of the promoted result type; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar to multiply by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1158</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3L1sSHbK8MJdoYqfDiEdqYa8oz2y</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplies a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> by a floating-point value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the product of the wrapped value and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the floating-point value to multiply by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a floating-point-like type (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>treat_as_floating_point&lt;U&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>)</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { static_cast&lt;U&gt;(lhs.value_) * rhs; }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>801</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3jLwYrquLwg8q5u6dHHLQgMAR89g</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the product of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>lhs</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> and </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rhs.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the product of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the first value to multiply</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the second value to multiply</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-049</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1326</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>225eDAUPH6z3hCFQeLyciCybZAaA</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplies a safe_int by a constrained value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped product of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to multiply</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to multiply by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>U</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>CP</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-0e4</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1470</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4BuxceDRHRmyZJWAcS6aJf9Zn9jv</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplies a safe_int by a non-integral constrained value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped product of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to multiply</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to multiply by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>constrained</literal>
        <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
          <identifier>constrained</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>std::declval&lt;T&gt;() * std::declval&lt;U&gt;()</operand>
                </decltype>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CP</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>U</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CP</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1312</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3dAsin7vntLKCN9pGhPoft6aGQGg</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplies a constrained value by a safe_int</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped product of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to multiply</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to multiply by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>constrained</literal>
        <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>U</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>CP</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-0e8</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1456</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4FGFG5cSzgQtpQAuBjZZqdt7aee2</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplies a non-integral constrained value by a safe_int</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped product of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to multiply</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to multiply by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>constrained</literal>
        <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
          <identifier>constrained</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>std::declval&lt;U&gt;() * std::declval&lt;T&gt;()</operand>
                </decltype>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CP</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>U</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CP</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<overloads>
  <name>operator+</name>
  <anchor>operator_plus-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>272</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2aTEDo1af7ddFJ4dE7wdpkuYW8nD</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Unary plus operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped result of applying unary </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>+</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>x</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the sum, as a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of the promoted result type; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the sum of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and the wrapped value</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the sum of the wrapped value and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the sum of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped sum of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped value to apply unary </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>+</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to</literal>
          </text>
        </children>
        <name>x</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to add</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>+</overloadedOperator>
  <members>3jNG5eg5mV2U7KZFVejSWNBU7oFG 4FQaU721cqEqijMbtgSs2rZWrecH 4Ys1fR3ujeWWSUgUoMvddpxxNqRf 48gfz98hzc8rBkWHoY7Wwm489YxA 418td5VrgHbGxfrqVKjepWQzoT1k RxBMeSmraNzhpeHrysjW9wdpeo2 2ZJWBNdGco1CmtJMG4tv7dMywxPW 4YfP9iiaLgPU9Y1S52Rax6LKMPpd aYNuTcSXpzSqbruEThAwxTHtBJm 2VsryTYAz47cz73x3ywoNcq3Yrrk</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator+</name>
  <anchor>operator_plus-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>272</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3jNG5eg5mV2U7KZFVejSWNBU7oFG</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Applies unary </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>+</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> to the wrapped value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped result of applying unary </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>+</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>x</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped value to apply unary </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>+</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to</literal>
          </text>
        </children>
        <name>x</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
          <identifier>constrained</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>+std::declval&lt;T&gt;()</operand>
                </decltype>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>x</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-0e9</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>897</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4FQaU721cqEqijMbtgSs2rZWrecH</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Adds a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> to an integral scalar, checking for overflow.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the sum, as a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of the promoted result type; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to add</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-0fec</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1113</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4Ys1fR3ujeWWSUgUoMvddpxxNqRf</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Adds a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> to a floating-point value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the sum of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and the wrapped value</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the floating-point value</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to add</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a floating-point-like type (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>treat_as_floating_point&lt;U&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>)</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { lhs + static_cast&lt;U&gt;(rhs.value_); }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-0e0</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>879</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>48gfz98hzc8rBkWHoY7Wwm489YxA</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Adds an integral scalar to a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, checking for overflow.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the sum, as a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of the promoted result type; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar to add</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1098</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>418td5VrgHbGxfrqVKjepWQzoT1k</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Adds a floating-point value to a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the sum of the wrapped value and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the floating-point value to add</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a floating-point-like type (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>treat_as_floating_point&lt;U&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>)</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { static_cast&lt;U&gt;(lhs.value_) + rhs; }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>771</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>RxBMeSmraNzhpeHrysjW9wdpeo2</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the sum of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>lhs</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> and </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rhs.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the sum of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the first value to add</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the second value to add</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-06f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1270</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2ZJWBNdGco1CmtJMG4tv7dMywxPW</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Adds a safe_int to a constrained value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped sum of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to add</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to add</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>U</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>CP</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-0fe8</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1414</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4YfP9iiaLgPU9Y1S52Rax6LKMPpd</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Adds a non-integral constrained value to a safe_int</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped sum of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to add</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to add</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>constrained</literal>
        <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
          <identifier>constrained</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>std::declval&lt;T&gt;() + std::declval&lt;U&gt;()</operand>
                </decltype>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CP</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>U</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CP</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1256</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>aYNuTcSXpzSqbruEThAwxTHtBJm</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Adds a constrained value to a safe_int</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped sum of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to add</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to add</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>constrained</literal>
        <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>U</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>CP</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus-06b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1400</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2VsryTYAz47cz73x3ywoNcq3Yrrk</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Adds a safe_int to a non-integral constrained value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped sum of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to add</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to add</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>constrained</literal>
        <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
          <identifier>constrained</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>std::declval&lt;U&gt;() + std::declval&lt;T&gt;()</operand>
                </decltype>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CP</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>U</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CP</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
</function>
<overloads>
  <name>operator-</name>
  <anchor>operator_minus-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>288</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2YJp8hEka492GQDBZ9z3uUKoRcwm</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Unary minus operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped result of negating </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>x</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the difference, as a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of the promoted result type; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the difference between </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and the wrapped value</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the difference between the wrapped value and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the result of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs - rhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped difference of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped value to negate</literal>
          </text>
        </children>
        <name>x</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to subtract</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>-</overloadedOperator>
  <members>3vEarXcTxF5h5qrTZFtVqoCjH9Jt Yk281FTKLwiVpobAGAEVYo9vYam shhE6vxvEUPCD8qtYaTGxtcfEEw 478jZWMngNaHUfTk6Xauzke6ayLq 25F4gSRo6fzspxMn6dWqthcLSMyX 34mUB5yaw9DGW4tPtZGFzX5KTgjv 3TcFxXPFaXtynFfcLj9Xh5m4US3z 2gHogwV6yDDpXc4jA7zyBJwvcHoJ 2AmRePuDmoApV2pViQRQqAk3nEs4 QiceuQ3Vk4oh95oMqJtmFeSadgb</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator-</name>
  <anchor>operator_minus-0d1</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/constrained.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
      <lineNumber>288</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3vEarXcTxF5h5qrTZFtVqoCjH9Jt</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Negates the wrapped value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped result of negating </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>x</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped value to negate</literal>
          </text>
        </children>
        <name>x</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
          <identifier>constrained</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>-std::declval&lt;T&gt;()</operand>
                </decltype>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>x</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>933</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>Yk281FTKLwiVpobAGAEVYo9vYam</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Subtracts a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from an integral scalar, checking for overflow.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the difference, as a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of the promoted result type; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to subtract</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-03</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1143</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>shhE6vxvEUPCD8qtYaTGxtcfEEw</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Subtracts a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a floating-point value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the difference between </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and the wrapped value</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the floating-point value</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to subtract</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a floating-point-like type (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>treat_as_floating_point&lt;U&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>)</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { lhs - static_cast&lt;U&gt;(rhs.value_); }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-0de</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>915</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>478jZWMngNaHUfTk6Xauzke6ayLq</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Subtracts an integral scalar from a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, checking for overflow.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the difference, as a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of the promoted result type; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar to subtract</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1128</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>25F4gSRo6fzspxMn6dWqthcLSMyX</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Subtracts a floating-point value from a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the difference between the wrapped value and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the floating-point value to subtract</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a floating-point-like type (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>treat_as_floating_point&lt;U&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>)</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { static_cast&lt;U&gt;(lhs.value_) - rhs; }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>786</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>34mUB5yaw9DGW4tPtZGFzX5KTgjv</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the difference of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>lhs</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> and </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rhs.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the result of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs - rhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to subtract from</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to subtract</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1298</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3TcFxXPFaXtynFfcLj9Xh5m4US3z</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Subtracts a constrained value from a safe_int</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped difference of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to subtract from</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to subtract</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>U</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>CP</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1442</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2gHogwV6yDDpXc4jA7zyBJwvcHoJ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Subtracts a non-integral constrained value from a safe_int</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped difference of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to subtract from</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to subtract</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>constrained</literal>
        <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
          <identifier>constrained</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>std::declval&lt;T&gt;() - std::declval&lt;U&gt;()</operand>
                </decltype>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CP</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>U</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CP</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1284</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2AmRePuDmoApV2pViQRQqAk3nEs4</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Subtracts a safe_int from a constrained value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped difference of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to subtract from</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to subtract</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>constrained</literal>
        <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>U</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>CP</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1428</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>QiceuQ3Vk4oh95oMqJtmFeSadgb</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Subtracts a safe_int from a non-integral constrained value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped difference of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to subtract from</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to subtract</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>constrained</literal>
        <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
          <identifier>constrained</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>std::declval&lt;U&gt;() - std::declval&lt;T&gt;()</operand>
                </decltype>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CP</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>U</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CP</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
</function>
<overloads>
  <name>operator/</name>
  <anchor>operator_slash-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>816</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>3KUrbhJcb4CgPn1B3uLhh3YiVmdX</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Division operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quotient, as a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of the promoted result type; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quotient of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and the wrapped value</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quotient of the wrapped value and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the result of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs / rhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow or division by zero</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped quotient of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to divide by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>/</overloadedOperator>
  <members>ZdgiXjWyEafFCG2Q7eyR2LX53sc 28ScSeNLpPFSb9B7a34pAS7o5e1p 3znNmM3vs1oxmrgsFixQRo9J5emU 2hodrB5pEpJjNZuPVZ3hJSkVPDD6 4HmNxQPdgjqFLKQHVAMZVhBb6Cit 3E2giYFdXqCB2sNt2wUZdRdYZNSn 2pXqHu5vAUuEKukSezbBXC2U5ScS 2wqJeLF6h7EpLPprQP6jZjWbv59F v68zkBmQkHHHv4twCHz93EvjbB7</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator/</name>
  <anchor>operator_slash-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1005</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>ZdgiXjWyEafFCG2Q7eyR2LX53sc</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Divides an integral scalar by a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, checking for overflow.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quotient, as a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of the promoted result type; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to divide by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1203</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>28ScSeNLpPFSb9B7a34pAS7o5e1p</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Divides a floating-point value by a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quotient of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and the wrapped value</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the floating-point value</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to divide by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a floating-point-like type (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>treat_as_floating_point&lt;U&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>)</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { lhs / static_cast&lt;U&gt;(rhs.value_); }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>987</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3znNmM3vs1oxmrgsFixQRo9J5emU</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Divides a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> by an integral scalar, checking for overflow.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quotient, as a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of the promoted result type; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar to divide by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1188</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2hodrB5pEpJjNZuPVZ3hJSkVPDD6</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Divides a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> by a floating-point value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quotient of the wrapped value and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the floating-point value to divide by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a floating-point-like type (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>treat_as_floating_point&lt;U&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>)</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { static_cast&lt;U&gt;(lhs.value_) / rhs; }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>816</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4HmNxQPdgjqFLKQHVAMZVhBb6Cit</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the quotient of dividing </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>lhs</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> by </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rhs.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the result of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs / rhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>; triggers </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ErrorPolicy::on_overflow</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow or division by zero</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the dividend</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the divisor</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1354</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3E2giYFdXqCB2sNt2wUZdRdYZNSn</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Divides a safe_int by a constrained value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped quotient of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to divide</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to divide by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>U</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>CP</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-082</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1498</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2pXqHu5vAUuEKukSezbBXC2U5ScS</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Divides a safe_int by a non-integral constrained value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped quotient of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to divide</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to divide by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>constrained</literal>
        <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
          <identifier>constrained</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>std::declval&lt;T&gt;() / std::declval&lt;U&gt;()</operand>
                </decltype>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CP</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>U</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CP</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-08b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1340</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2wqJeLF6h7EpLPprQP6jZjWbv59F</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Divides a constrained value by a safe_int</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped quotient of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to divide</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to divide by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>constrained</literal>
        <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>2P1fr8Uv22MRvaR9kB3K2wPUB18r</id>
                      <identifier>integral_op_result_t</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                          <identifier>detail</identifier>
                        </identifier>
                      </prefix>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>U</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>T</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ErrorPolicy</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
              <identifier>constrained</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>U</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>CP</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1484</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>v68zkBmQkHHHv4twCHz93EvjbB7</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Divides a non-integral constrained value by a safe_int</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the wrapped quotient of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to divide</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to divide by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>constrained</literal>
        <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
          <identifier>constrained</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>std::declval&lt;U&gt;() / std::declval&lt;T&gt;()</operand>
                </decltype>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CP</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>U</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CP</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <hasTrailingReturn/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>parse_align</name>
  <anchor>parse_align</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>560</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2CDn19jgZfTu7uxVpWSwdoSXUUBQ</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Parses the fill and alignment part of a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std-format-spec</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> into </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>specs.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an iterator past the parsed fill/align part of the format spec</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the beginning of the range to parse; must be non-empty</literal>
          </text>
        </children>
        <name>begin</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the end of the range to parse</literal>
          </text>
        </children>
        <name>end</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the specs object to update with the parsed fill and alignment</literal>
          </text>
        </children>
        <name>specs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the alignment to use when the format spec does not request one</literal>
          </text>
        </children>
        <name>default_align</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>It</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>It</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>begin</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>It</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>end</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Specs</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>specs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2woQWhYqRpTFSgSbfDEwwTPw6xor</id>
              <identifier>fmt_align</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>default_align</name>
      <default>fmt_align::none</default>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>It</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2W2b4Pfsahi2b8ZxMQYBnzvrdpCe</id>
            <identifier>forward_iterator</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                <identifier>std</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Specs</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>parse_dynamic_spec</name>
  <anchor>parse_dynamic_spec</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>486</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>21kG63jZ76kVR5Vo524pF6N5i3ic</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Parses a spec value that may be a literal integer or a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>{}</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>-style dynamic argument reference.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an iterator past the parsed spec value, or </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>begin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> when neither form is present</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the beginning of the range to parse; must be non-empty</literal>
          </text>
        </children>
        <name>begin</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the end of the range to parse</literal>
          </text>
        </children>
        <name>end</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>updated with the parsed value when it is a literal integer</literal>
          </text>
        </children>
        <name>value</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>updated with the referenced argument when the value is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>{}</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>-style dynamic</literal>
          </text>
        </children>
        <name>ref</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the format parse context, used to validate a dynamic argument reference</literal>
          </text>
        </children>
        <name>ctx</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>It</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>It</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>begin</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>It</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>end</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>int</identifier>
                </identifier>
              </name>
              <fundamentalType>int</fundamentalType>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>value</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>Ta7GV6f6RHEgC8tgs11uQqtWhc1</id>
                  <identifier>fmt_arg_ref</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Char</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>ref</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>PkvFwhsMRLCSnuS1enET3vhh8s7</id>
                  <identifier>basic_format_parse_context</identifier>
                  <prefix>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                      <identifier>std</identifier>
                    </identifier>
                  </prefix>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Char</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>ctx</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>It</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2W2b4Pfsahi2b8ZxMQYBnzvrdpCe</id>
            <identifier>forward_iterator</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                <identifier>std</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Char</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>2gPRdxjyeRoDSYQnW8s9Y2FiRzEJ</id>
                    <identifier>iter_value_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>It</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>parse_fill_align_width</name>
  <anchor>parse_fill_align_width</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>623</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>Gpzx89oL8VH2WYeEJpjXxptkStn</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Parses the fill/align/width part of a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std-format-spec</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> into </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>specs.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an iterator past the parsed fill/align/width part of the format spec</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the format parse context, used to resolve a dynamic (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>{}</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>-style) width</literal>
          </text>
        </children>
        <name>ctx</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the beginning of the range to parse</literal>
          </text>
        </children>
        <name>begin</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the end of the range to parse</literal>
          </text>
        </children>
        <name>end</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the specs object to update with the parsed fill, alignment, and width</literal>
          </text>
        </children>
        <name>specs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the alignment to use when the format spec does not request one</literal>
          </text>
        </children>
        <name>default_align</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>It</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>PkvFwhsMRLCSnuS1enET3vhh8s7</id>
                  <identifier>basic_format_parse_context</identifier>
                  <prefix>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                      <identifier>std</identifier>
                    </identifier>
                  </prefix>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <specialization>
                              <kind>specialization</kind>
                              <id>2gPRdxjyeRoDSYQnW8s9Y2FiRzEJ</id>
                              <identifier>iter_value_t</identifier>
                              <prefix>
                                <identifier>
                                  <kind>identifier</kind>
                                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                                  <identifier>std</identifier>
                                </identifier>
                              </prefix>
                              <templateArgs>
                                <type>
                                  <kind>type</kind>
                                  <type>
                                    <named>
                                      <kind>named</kind>
                                      <name>
                                        <identifier>
                                          <kind>identifier</kind>
                                          <identifier>It</identifier>
                                        </identifier>
                                      </name>
                                    </named>
                                  </type>
                                </type>
                              </templateArgs>
                            </specialization>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>ctx</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>It</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>begin</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>It</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>end</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Specs</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>specs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2woQWhYqRpTFSgSbfDEwwTPw6xor</id>
              <identifier>fmt_align</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>default_align</name>
      <default>fmt_align::none</default>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>It</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2W2b4Pfsahi2b8ZxMQYBnzvrdpCe</id>
            <identifier>forward_iterator</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                <identifier>std</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Specs</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>parse_nonnegative_int</name>
  <anchor>parse_nonnegative_int</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>335</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>FTGjg1GapRwiozjd1SfhjJnbHzo</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The range must be non-empty and start with a digit.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Parses the range [begin, end) as an unsigned integer.]</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the parsed integer, or </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>error_value</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on overflow</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the beginning of the range to parse; advanced past the parsed digits</literal>
          </text>
        </children>
        <name>begin</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the end of the range to parse</literal>
          </text>
        </children>
        <name>end</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to return if the parsed integer overflows </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>int</literal>
              </text>
            </children>
          </code>
        </children>
        <name>error_value</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>int</identifier>
        </identifier>
      </name>
      <fundamentalType>int</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>It</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>begin</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>It</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>end</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>int</identifier>
            </identifier>
          </name>
          <fundamentalType>int</fundamentalType>
        </named>
      </type>
      <name>error_value</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>It</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2W2b4Pfsahi2b8ZxMQYBnzvrdpCe</id>
            <identifier>forward_iterator</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                <identifier>std</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>write_padded</name>
  <anchor>write_padded</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/format.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/format.h</sourcePath>
      <lineNumber>650</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>24nPZNN3AvF6xPcz2SW6zqLNtxdY</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Avoids instantiating format_to/vformat_to infrastructure for the common padding use-case inside formatter&lt;Unit&gt;, formatter&lt;Dimension&gt;, and formatter&lt;quantity&gt; specializations.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Writes a string to an output iterator with fill/align/width padding.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the output iterator after writing the padded string</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the output iterator to write to</literal>
          </text>
        </children>
        <name>out</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the string to write</literal>
          </text>
        </children>
        <name>s</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the minimum field width; </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>s</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is padded with </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>fill</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to reach it</literal>
          </text>
        </children>
        <name>width</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>how </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>s</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is aligned within the padded field</literal>
          </text>
        </children>
        <name>align</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the character(s) used to pad </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>s</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> up to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>width</literal>
              </text>
            </children>
          </code>
        </children>
        <name>fill</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Out</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Out</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>out</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>479DxynkjrswieANT6sUuL6v9vKo</id>
              <identifier>basic_string_view</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Char</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>s</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>int</identifier>
            </identifier>
          </name>
          <fundamentalType>int</fundamentalType>
        </named>
      </type>
      <name>width</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2woQWhYqRpTFSgSbfDEwwTPw6xor</id>
              <identifier>fmt_align</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>align</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>64SzJH8WfiNzg8c8iZ7a8Sppiub</id>
                  <identifier>fill_t</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Char</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>fill</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Char</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Out</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>3iwafw1kmJffSaNg5VLe1fALFenr</id>
            <identifier>output_iterator</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                <identifier>std</identifier>
              </identifier>
            </prefix>
            <templateArgs>
              <type>
                <kind>type</kind>
                <type>
                  <named>
                    <kind>named</kind>
                    <name>
                      <identifier>
                        <kind>identifier</kind>
                        <identifier>Char</identifier>
                      </identifier>
                    </name>
                  </named>
                </type>
              </type>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>operator&lt;&lt;</name>
  <anchor>operator_lshift</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1536</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>bgUstoF2qZGXu9CxZRYtSQdEgeG</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Streams a safe_int&apos;s wrapped value to an output stream</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>os</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the output stream to write to</literal>
          </text>
        </children>
        <name>os</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to stream</literal>
          </text>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>25SvzRR2ZNJzQSA1GeqWrnSoTQS9</id>
              <identifier>basic_ostream</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>CharT</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Traits</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>25SvzRR2ZNJzQSA1GeqWrnSoTQS9</id>
                  <identifier>basic_ostream</identifier>
                  <prefix>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                      <identifier>std</identifier>
                    </identifier>
                  </prefix>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Traits</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>os</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>v</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <overloadedOperator>&lt;&lt;</overloadedOperator>
</function>
<overloads>
  <name>operator==</name>
  <anchor>operator_eq-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>844</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>3MoWbck1FVRG25XiNHag4izs6WsM</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Equality operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the underlying values are equal</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the wrapped value equals </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the wrapped values are equal</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to compare</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to compare against</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a floating-point-like type (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>treat_as_floating_point&lt;U&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>)</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>==</overloadedOperator>
  <members>2djhPVQHs53XtAPKy84eovT2xAEA 4B7LH2VAvubyi7CAWpZB5ZDKaDZb S6hoixLnZ3JhKkzZd7bzvCmGaph 3XDwuTajqZES8GfNPgdbi9MAVbky</members>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
</overloads>
<function>
  <name>operator==</name>
  <anchor>operator_eq-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1511</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2djhPVQHs53XtAPKy84eovT2xAEA</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether a safe_int and a constrained value are equal</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the underlying values are equal</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to compare</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to compare against</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>U</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CP</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<function>
  <name>operator==</name>
  <anchor>operator_eq-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1218</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4B7LH2VAvubyi7CAWpZB5ZDKaDZb</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> equals a floating-point value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the wrapped value equals </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the floating-point value to compare against</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a floating-point-like type (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>treat_as_floating_point&lt;U&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>)</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<function>
  <name>operator==</name>
  <anchor>operator_eq-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1055</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>S6hoixLnZ3JhKkzZd7bzvCmGaph</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> equals an integral scalar, comparing safely across signedness.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the wrapped value equals </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar to compare against</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<function>
  <name>operator==</name>
  <anchor>operator_eq-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>844</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3XDwuTajqZES8GfNPgdbi9MAVbky</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether two </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> values wrap equal underlying values.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the wrapped values are equal</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the first value to compare</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the second value to compare</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<overloads>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-029</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>855</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>aWM7qt9vZRCsQ5n4Ng1weKQ43CC</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Three-way comparison operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the ordering of the underlying values</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the ordering between the wrapped value and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the ordering of the wrapped values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to compare</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to compare against</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a floating-point-like type (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>treat_as_floating_point&lt;U&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>)</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
  <members>39VcUAnfYmrvhsje2mbpQVr258w7 UJoL1uFmv4FCNdfsitSbTnbcizb 37Crgot2GGASvAsMksw96uoCgFLU 2SPcJF1V6W77aFJUwbRqZSJFRXc6</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-09a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1523</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>39VcUAnfYmrvhsje2mbpQVr258w7</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Compares a safe_int with a constrained value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the ordering of the underlying values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the safe_int to compare</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the constrained value to compare against</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
                  <identifier>constrained</identifier>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>U</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CP</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
</function>
<function>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-021</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1232</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>UJoL1uFmv4FCNdfsitSbTnbcizb</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Compares a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> with a floating-point value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the ordering between the wrapped value and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the floating-point value to compare against</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a floating-point-like type (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>treat_as_floating_point&lt;U&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>)</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
</function>
<function>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-097</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>1069</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>37Crgot2GGASvAsMksw96uoCgFLU</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Compares a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> with an integral scalar, comparing safely across signedness.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the ordering between the wrapped value and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> operand</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar to compare against</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the integral scalar type</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>3k2uwCJKHuMhuR8wQ83kh9SVn7RX</id>
          <identifier>strong_ordering</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
</function>
<function>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/safe_int.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
      <lineNumber>855</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2SPcJF1V6W77aFJUwbRqZSJFRXc6</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Compares two </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> values by their wrapped underlying values.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the ordering of the wrapped values</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the first value to compare</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the second value to compare</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>3k2uwCJKHuMhuR8wQ83kh9SVn7RX</id>
          <identifier>strong_ordering</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
              <identifier>safe_int</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
</function>
<variable>
  <name>unspecified</name>
  <anchor>unspecified</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/utility/unspecified.h</shortPath>
      <sourcePath>src/core/include/mp-units/utility/unspecified.h</sourcePath>
      <lineNumber>49</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>sNY3dsU4UAyb4EjHTKmBWo2kzop</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The default value of a customization point that has not yet been specialized.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>ktnRPuWZy1tNGnc2XX5w6ozA1h3</id>
          <identifier>unspecified_t</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>{}</initializer>
  <isInline/>
  <isConstexpr/>
</variable>
<concept>
  <name>Complex</name>
  <anchor>Complex</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/representation.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/representation.h</sourcePath>
        <lineNumber>48</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>4KGHJcM6iTDqwJ5vLjwuLuJupgcF</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A complex-field representation type.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>::mp_units::detail::Complex&lt;T&gt;</constraint>
</concept>
<concept>
  <name>ComplexScalar</name>
  <anchor>ComplexScalar</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/representation.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/representation.h</sourcePath>
        <lineNumber>56</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>2GXSNe4AE7oFD4A2aNgomRrfF1wn</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A complex scalar: complex field with </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>real()</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>/</literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>imag()</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>/</literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>modulus()</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>::mp_units::detail::ComplexScalar&lt;T&gt;</constraint>
</concept>
<concept>
  <name>ConstraintPolicy</name>
  <anchor>ConstraintPolicy</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/constrained.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/constrained.h</sourcePath>
        <lineNumber>62</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>F1PcNrb266QTvLzxfkDRgzGToUv</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Requires a static </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>on_constraint_violation(std::string_view)</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> member that reports a domain constraint violation.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Concept satisfied by error policy types usable with </literal>
        </text>
        <reference>
          <kind>reference</kind>
          <literal>constrained</literal>
          <id>Nzx2qJ12pKf2XySPV5gB6388Ty7</id>
        </reference>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>EP</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>requires(std::string_view msg) { EP::on_constraint_violation(msg); }</constraint>
</concept>
<concept>
  <name>OverflowPolicy</name>
  <anchor>OverflowPolicy</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>63</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>dAG2ho38s3ksqurThnkeRjF2TYa</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Concept satisfied by overflow error policies usable with </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the candidate error policy type</literal>
          </text>
        </children>
        <name>EP</name>
      </tParam>
    </tparams>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>EP</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>requires(std::string_view msg) { EP::on_overflow(msg); }</constraint>
</concept>
<concept>
  <name>Real</name>
  <anchor>Real</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/representation.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/representation.h</sourcePath>
        <lineNumber>44</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>4QZ1Z6K4cf4Qq83dY1NJEvAFeCh5</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A real-field representation type.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>::mp_units::detail::Real&lt;T&gt;</constraint>
</concept>
<concept>
  <name>RealScalar</name>
  <anchor>RealScalar</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/representation.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/representation.h</sourcePath>
        <lineNumber>52</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>8N5rBmbi6jZRkTuVoojD6mg5osd</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A real scalar (tensor order 0): real field, totally ordered, self-scalable.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>::mp_units::detail::RealScalar&lt;T&gt;</constraint>
</concept>
<concept>
  <name>Scalar</name>
  <anchor>Scalar</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/representation.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/representation.h</sourcePath>
        <lineNumber>60</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>2dXupK2fdLoYaK4pNQ6vhBV8gv5n</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A scalar (real or complex, tensor order 0) - the element type a vector/tensor is built from.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>::mp_units::detail::Scalar&lt;T&gt;</constraint>
</concept>
<concept>
  <name>Tensor</name>
  <anchor>Tensor</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/representation.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/representation.h</sourcePath>
        <lineNumber>68</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>2XAMA2DdGng1p1DGNyqaRzm7aMYz</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A second-order tensor (or a lower-order type filling its slot).</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>::mp_units::detail::Tensor&lt;T&gt;</constraint>
</concept>
<concept>
  <name>Vector</name>
  <anchor>Vector</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/representation.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/representation.h</sourcePath>
        <lineNumber>64</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>xcKPFX8XWNfrtcdtHcai9d2FUhE</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A vector (a scalar, or a magnitude-bearing tensor-order-1 type).</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>::mp_units::detail::Vector&lt;T&gt;</constraint>
</concept>
<concept>
  <name>specified</name>
  <anchor>specified</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/unspecified.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/unspecified.h</sourcePath>
        <lineNumber>52</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>3RskANAdvk9Nb1FxKE9d65u3zYLW</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Satisfied when a customization point has been given a value (i.e. is not </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>unspecified</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>).</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>!std::same_as&lt;std::remove_cvref_t&lt;T&gt;, unspecified_t&gt;</constraint>
</concept>
<guide>
  <name>safe_int</name>
  <anchor>safe_int-0b</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/utility/safe_int.h</shortPath>
        <sourcePath>src/core/include/mp-units/utility/safe_int.h</sourcePath>
        <lineNumber>1547</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>guide</kind>
  <id>3WKoYN683iyDTkWyrptr3vz6xu2t</id>
  <extraction>regular</extraction>
  <parent>2HniVS23jfsJhnimKmHvULUT12dS</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deduces </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>safe_int&lt;T&gt;</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> (with the default </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>ErrorPolicy</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>) from an integral value.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <deduced>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2eE7JCvWEwV5xehQ4sPN31PxLGJc</id>
          <identifier>safe_int</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>T</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </deduced>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3FpKAfeBwKLVhB4psLLXoU72e1a4</id>
            <identifier>integral</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>r7u95SEarQA16WhciqdtyGPBBE1</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>T</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
  </params>
</guide>
<typedef>
  <name>conditional</name>
  <anchor>conditional</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/type_traits.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
        <lineNumber>65</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>2Hzo8aceu5rHGqWKY1MKnC92NdXE</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Alias for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> if </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>B</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>true</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, otherwise </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>F</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> (equivalent to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::conditional_t&lt;B, T, F&gt;</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>)</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <identifier>type</identifier>
          <prefix>
            <specialization>
              <kind>specialization</kind>
              <id>2TNPPQfFqVrZWhXttLHd9Xn1wi7Y</id>
              <identifier>conditional_impl</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <constant>
                  <kind>constant</kind>
                  <value>B</value>
                </constant>
              </templateArgs>
            </specialization>
          </prefix>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>T</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>F</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>B</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>bool</identifier>
              </identifier>
            </name>
            <fundamentalType>bool</fundamentalType>
          </named>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>F</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
</typedef>
<typedef>
  <name>expr_type</name>
  <anchor>expr_type</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
        <lineNumber>171</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>2M62fJpTrurZhYXceGEhUTKbuoqL</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The underlying symbolic expression factor type, unwrapping </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>power</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> if present</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>type</identifier>
          <prefix>
            <specialization>
              <kind>specialization</kind>
              <id>3bTiX46viNNhtHV4DZbUGCwurK9H</id>
              <identifier>expr_type_impl</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>T</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
</typedef>
<typedef>
  <name>fixed_string</name>
  <anchor>fixed_string</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>433</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>4FJnHCB9VAAzQgxJdRPNFtwnAPAb</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>basic_fixed_string</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> specialized for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>char</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
          <identifier>basic_fixed_string</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>char</identifier>
                    </identifier>
                  </name>
                  <fundamentalType>char</fundamentalType>
                </named>
              </type>
            </type>
            <constant>
              <kind>constant</kind>
              <value>N</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>N</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
  </template>
</typedef>
<typedef>
  <name>fixed_u16string</name>
  <anchor>fixed_u16string</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>439</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>3TsCZmEoDMsbhtvmWPs8G334BaxT</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>basic_fixed_string</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> specialized for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>char16_t</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
          <identifier>basic_fixed_string</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>char16_t</identifier>
                    </identifier>
                  </name>
                  <fundamentalType>char16_t</fundamentalType>
                </named>
              </type>
            </type>
            <constant>
              <kind>constant</kind>
              <value>N</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>N</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
  </template>
</typedef>
<typedef>
  <name>fixed_u32string</name>
  <anchor>fixed_u32string</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>442</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>2yYpLRghFNWdXZRaYM8MopiJ2ZKR</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>basic_fixed_string</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> specialized for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>char32_t</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
          <identifier>basic_fixed_string</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>char32_t</identifier>
                    </identifier>
                  </name>
                  <fundamentalType>char32_t</fundamentalType>
                </named>
              </type>
            </type>
            <constant>
              <kind>constant</kind>
              <value>N</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>N</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
  </template>
</typedef>
<typedef>
  <name>fixed_u8string</name>
  <anchor>fixed_u8string</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>436</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>EUR8d61S1WxEe8azn8ugmzAGxca</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>basic_fixed_string</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> specialized for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>char8_t</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
          <identifier>basic_fixed_string</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>char8_t</identifier>
                    </identifier>
                  </name>
                  <fundamentalType>char8_t</fundamentalType>
                </named>
              </type>
            </type>
            <constant>
              <kind>constant</kind>
              <value>N</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>N</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
  </template>
</typedef>
<typedef>
  <name>fixed_wstring</name>
  <anchor>fixed_wstring</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>445</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>3sKp9ysGAz16gSBzpBHMh3gd9ayH</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>basic_fixed_string</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> specialized for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>wchar_t</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
          <identifier>basic_fixed_string</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>wchar_t</identifier>
                    </identifier>
                  </name>
                  <fundamentalType>wchar_t</fundamentalType>
                </named>
              </type>
            </type>
            <constant>
              <kind>constant</kind>
              <value>N</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>N</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
  </template>
</typedef>
<typedef>
  <name>quantity_values</name>
  <anchor>quantity_values</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>636</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>4Wu2rKCrbh8vvd7KU7rvYRQMeYWY</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated alias for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>representation_values</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a representation type for which a type trait is defined</literal>
          </text>
        </children>
        <name>Rep</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.5.0: Use `representation_values` instead&quot;</string>
      </balancedTokens>
      <message>2.5.0: Use `representation_values` instead</message>
    </deprecated>
  </attributes>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>32CvsHWTsmMFS3CDAwu9iGBtJJah</id>
          <identifier>representation_values</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
</typedef>
<typedef>
  <name>rep_for</name>
  <anchor>rep_for</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_traits.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_traits.h</sourcePath>
        <lineNumber>142</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>2J9aWTqQfNznqnGkUYYYdzuDP3wr</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Derived from the type&apos;s own </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>::rep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> member (for </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> / </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>) or from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_like_traits&lt;T&gt;::rep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> / </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point_like_traits&lt;T&gt;::rep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> for external types.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>This is </literal>
          </text>
          <strong>
            <kind>strong</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>not</literal>
              </text>
            </children>
          </strong>
          <text>
            <kind>text</kind>
            <literal> a customization point. Users teach the library about external types by specializing </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_like_traits</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> / </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point_like_traits</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, not this helper.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Public alias that yields the representation type of a quantity-like type.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a quantity-like or quantity-point-like type</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>type</identifier>
          <prefix>
            <specialization>
              <kind>specialization</kind>
              <id>2wJfppQ9L4qpqtAmKkJdGimfBTg9</id>
              <identifier>rep_for_impl</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>T</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
</typedef>
<typedef>
  <name>representation_canonical_type_t</name>
  <anchor>representation_canonical_type_t</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>193</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>KB5qmriszBYfdwuVVgPjvA4ukKZ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Convenience alias for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>representation_canonical_type&lt;T&gt;::type</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the representation value type</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>type</identifier>
          <prefix>
            <specialization>
              <kind>specialization</kind>
              <id>3VNVqctAij8WiPwQ1AWB2ihbYR8S</id>
              <identifier>representation_canonical_type</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>T</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
</typedef>
<typedef>
  <name>representation_underlying_type_t</name>
  <anchor>representation_underlying_type_t</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>149</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>47yY182R2Xiu3jP6e1AR9PwpsXNp</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Convenience alias for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>representation_underlying_type&lt;T&gt;::type</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the representation type</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>type</identifier>
          <prefix>
            <specialization>
              <kind>specialization</kind>
              <id>pa9cvciPHvw1w8XJp7nce3mZ12W</id>
              <identifier>representation_underlying_type</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>T</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires { typename representation_underlying_type&lt;T&gt;::type; }</requires>
  </template>
</typedef>
<typedef>
  <name>text_encoding</name>
  <anchor>text_encoding</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>61</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>j4C6UbTUKzUxiF5DoXhaazh91po</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated alias for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>character_set</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.5.0: Use `character_set` instead&quot;</string>
      </balancedTokens>
      <message>2.5.0: Use `character_set` instead</message>
    </deprecated>
  </attributes>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>p64pSthzNphpzitvMwpEkwsvGnj</id>
          <identifier>character_set</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>zeroth_point_origin_</name>
  <anchor>zeroth_point_origin_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
        <lineNumber>273</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>4LnLqHgYvC6eywZZVZ419SfGLGkQ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated alias for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>natural_point_origin_</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: Use `natural_point_origin_` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: Use `natural_point_origin_` instead</message>
    </deprecated>
  </attributes>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>3r2vXYd3SPieRgasCwgJtKMR29CX</id>
          <identifier>natural_point_origin_</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>QS</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
                <identifier>QuantitySpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
  </template>
</typedef>
<record>
  <name>absolute_point_origin</name>
  <anchor>absolute_point_origin</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>200</lineNumber>
      <columnNumber>17</columnNumber>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point_concepts.h</sourcePath>
        <lineNumber>45</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>UMCNgaD8fdCfJnTyLd9quGNfNBG</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Defines the root of a coordinate frame from which quantity points measured in terms of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>QS</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> are expressed. Optional trailing arguments may specify additional policies, such as bounds checking.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A point origin located at the zero point of a quantity specification</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity specification of the quantities measured from this origin</literal>
          </text>
        </children>
        <name>QS</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>optional policy arguments (e.g. a bounds policy)</literal>
          </text>
        </children>
        <name>Args</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
                <identifier>QuantitySpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>Args</name>
        <isParameterPack/>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>KK9YaxHBuJyB7F2cmbzypn8JYd8</id>
              <identifier>point_origin_interface</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/quantity_point.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
          <lineNumber>201</lineNumber>
          <columnNumber>32</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <staticVariables>3LYUQEpRhFx49RyThi9tLfFR4PRF 3K514mwrEwBsBkyRRmp5aFMaA9vy</staticVariables>
    </public>
  </interface>
</record>
<variable>
  <name>_bounds_</name>
  <anchor>_bounds_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>206</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3LYUQEpRhFx49RyThi9tLfFR4PRF</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>UMCNgaD8fdCfJnTyLd9quGNfNBG</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The bounds policy applied to points measured from this origin, if any was provided in </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Args</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>detail::bounds_arg&lt;Args...&gt;()</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_quantity_spec_</name>
  <anchor>_quantity_spec_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>204</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3K514mwrEwBsBkyRRmp5aFMaA9vy</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>UMCNgaD8fdCfJnTyLd9quGNfNBG</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The quantity specification of the quantities measured from this origin</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
          <identifier>QuantitySpec</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>QS</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>base_dimension</name>
  <anchor>base_dimension</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>144</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/dimension_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/dimension_concepts.h</sourcePath>
        <lineNumber>39</lineNumber>
        <columnNumber>17</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>yhSsxqE9awUUVFfoJoqVwu61Svr</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Base quantity is a quantity in a conventionally chosen subset of a given system of quantities, where no quantity in the subset can be expressed in terms of the other quantities within that subset. They are referred to as being mutually independent since a base quantity cannot be expressed as a product of powers of the other base quantities.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Symbol</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> template parameter is an unique identifier of the base dimension. The same identifiers can be multiplied and divided which will result with an adjustment of its factor in an exponent of a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>derived_dimension</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> (in case of zero the dimension will be simplified and removed from further analysis of current expresion).</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>User should derive a strong type from this class template rather than use it directly in the source code. For example:</literal>
          </text>
        </children>
      </paragraph>
      <code>
        <kind>code</kind>
        <literal>inline constexpr struct dim_length : base_dimension&lt;&quot;L&quot;&gt; {} dim_length;
inline constexpr struct dim_time : base_dimension&lt;&quot;T&quot;&gt; {} dim_time;
inline constexpr struct dim_mass : base_dimension&lt;&quot;M&quot;&gt; {} dim_mass;</literal>
        <info>cpp</info>
      </code>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>A common convention in this library is to assign the same name for a type and an object of this type. Besides defining them user never works with the dimension types in the source code. All operations are done on the objects. Contrarily, the dimension types are the only one visible in the compilation errors. Having them of the same names improves user experience and somehow blurs those separate domains.</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A dimension of a base quantity</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an unique identifier of the base dimension used to provide dimensional analysis support</literal>
          </text>
        </children>
        <name>Symbol</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Symbol</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                <identifier>symbol_text</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>14pWyqnAtWutWMZYD29PVUW3jXu</id>
              <identifier>dimension_interface</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/dimension.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
          <lineNumber>145</lineNumber>
          <columnNumber>25</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <staticVariables>rEAucSmpiY4xUsQmYDhqXcu9rWL</staticVariables>
    </public>
  </interface>
</record>
<variable>
  <name>_symbol_</name>
  <anchor>_symbol_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>146</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>rEAucSmpiY4xUsQmYDhqXcu9rWL</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>yhSsxqE9awUUVFfoJoqVwu61Svr</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Unique base dimension identifier</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>Symbol</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>basic_fixed_string</name>
  <anchor>basic_fixed_string-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>199</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>60</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A compile-time fixed string</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Character type to be used by the string</literal>
          </text>
        </children>
        <name>CharT</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The size of the string</literal>
          </text>
        </children>
        <name>N</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>class</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>CharT</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>N</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>31bkbibbAYnQAQ2N3QBHsFAi2PvR</id>
              <identifier>fixed_string_iface</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/ext/fixed_string.h</shortPath>
          <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
          <lineNumber>200</lineNumber>
          <columnNumber>28</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>YjwkBrekrDxzG7FmcPMc53Uqkna 26x22NJv48cQDPwcPuG5J1dwUj2v WaPFscZJWooMi1NuigJgCwCQquy QmmGZc5t2Z4oJSoHFzi1QHsP2Tk 3MqiDHMqCjyL5xM9CcDo5vSPkvAp YE5mMFVjmk2MX3dZy54khPBCfEG 4XaaQTK4Z3FLQDZhicEvNJqsaMQS 5R4JixZGpXZyQCpB9SbRFKijAmT 2KV6xQa39UiYXshbMddvYoCFoQr7 2sTBubmNJggk4oBgbmbEttLvPPDA 2NqQvUE2NsPdcN4dkTUYkYTJ2oT5</typedefs>
      <functions>FjMyD3B3JQEEmSpDz1wii3369EW F45h1rKEk8cdLNiKA87cd4DHSik 4BGbRAV4oAbPCotvb1UShJH3yXH2 2DMAYwQFQJSFdKpXYxT3Jc3WLpmt ac9Ji6q1RtmSBXbFLBS7L7C6g6Y 2Bvc7EVFHY7zbSCSA3P9Vkn4JMgb E5QCKvEA8ii2FzMrq6APAzibRXR 2iqzpeWVMpuzz4QJ525kq8dKbA8U qkoktvU7dbVRBJpPTQgu3ThFEgz 39rL3buTukbb7ukLQ1mJKevkPmnJ 4J4DSS5MsjWsz4rJ2E761pK9VxUL 3sAg8uzFnDhHpgxV9quWJMXsUeLw 3GWiv252vurU27dyxMUUKVZZJ8tf M2p5YWdboswccS41w7TxVLnmhd4 uFEFQE5qCoEdLBUeD3hj5MdbJFW cW7HzKFQRLigSSpdkz7zeQrDFnv 3WxopGnsNafnoZuGvUL66Hmc771P 3u1zH5fGm76RtpSeQ8Wqtfxk8Fd1 GHCXdWKy1Tx2Yn7CHaCTkUAwWwN</functions>
      <variables>TeHBwygc1HX8PvchE9dRQ7wLCou</variables>
      <staticVariables>44FdXbfCAGXXtqDc2sp9Mj9LKD1L GqivqeVYiXvXwsRwsk8mTEv7GCe PqD4py3bnzsytWcxATWodSZZqwa 42yuFuhzt29bSsUovPdv1Q5w7cXk</staticVariables>
    </public>
  </interface>
  <deductionGuides>4T3hrnMess462PNxTNtMdenG9UCt 2bai7FbaaMex8cf5o62LHb9J1cYf 3zeqQ7151vvHP4xWNTKmNFB2SHhW</deductionGuides>
</record>
<typedef>
  <name>const_iterator</name>
  <anchor>const_iterator</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>218</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>YjwkBrekrDxzG7FmcPMc53Uqkna</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constant iterator over the string&apos;s elements</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <pointer>
      <kind>pointer</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <isConst/>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2NqQvUE2NsPdcN4dkTUYkYTJ2oT5</id>
              <identifier>value_type</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </pointer>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>const_pointer</name>
  <anchor>const_pointer</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>212</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>26x22NJv48cQDPwcPuG5J1dwUj2v</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Pointer to a constant character of the string</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <pointer>
      <kind>pointer</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <isConst/>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2NqQvUE2NsPdcN4dkTUYkYTJ2oT5</id>
              <identifier>value_type</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </pointer>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>const_reference</name>
  <anchor>const_reference</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>216</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>WaPFscZJWooMi1NuigJgCwCQquy</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Reference to a constant character of the string</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <isConst/>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2NqQvUE2NsPdcN4dkTUYkYTJ2oT5</id>
              <identifier>value_type</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>const_reverse_iterator</name>
  <anchor>const_reverse_iterator</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>222</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>QmmGZc5t2Z4oJSoHFzi1QHsP2Tk</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Reverse iterator over the string&apos;s constant elements</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>oeEbbwRjJeyrgiT2YFUz4wpmV5r</id>
          <identifier>reverse_iterator</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <id>YjwkBrekrDxzG7FmcPMc53Uqkna</id>
                      <identifier>const_iterator</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>difference_type</name>
  <anchor>difference_type</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>228</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>3MqiDHMqCjyL5xM9CcDo5vSPkvAp</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Signed integer type used to represent iterator differences</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>EKxMGCxxySWyqBbWqvvL9j9KhWv</id>
          <identifier>ptrdiff_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>iterator</name>
  <anchor>iterator</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>220</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>YE5mMFVjmk2MX3dZy54khPBCfEG</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Iterator type (same as </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>const_iterator</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, as the string is immutable)</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>YjwkBrekrDxzG7FmcPMc53Uqkna</id>
          <identifier>const_iterator</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>pointer</name>
  <anchor>pointer</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>210</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>4XaaQTK4Z3FLQDZhicEvNJqsaMQS</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Pointer to a character of the string</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <pointer>
      <kind>pointer</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2NqQvUE2NsPdcN4dkTUYkYTJ2oT5</id>
              <identifier>value_type</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </pointer>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>reference</name>
  <anchor>reference</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>214</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>5R4JixZGpXZyQCpB9SbRFKijAmT</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Reference to a character of the string</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2NqQvUE2NsPdcN4dkTUYkYTJ2oT5</id>
              <identifier>value_type</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>reverse_iterator</name>
  <anchor>reverse_iterator</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>224</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>2KV6xQa39UiYXshbMddvYoCFoQr7</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Reverse iterator type (same as </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>const_reverse_iterator</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, as the string is immutable)</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>QmmGZc5t2Z4oJSoHFzi1QHsP2Tk</id>
          <identifier>const_reverse_iterator</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>size_type</name>
  <anchor>size_type</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>226</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>2sTBubmNJggk4oBgbmbEttLvPPDA</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Unsigned integer type used to represent sizes and indices</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
          <identifier>size_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>value_type</name>
  <anchor>value_type</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>208</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>2NqQvUE2NsPdcN4dkTUYkYTJ2oT5</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The character type used by the string</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>CharT</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<overloads>
  <name>basic_fixed_string</name>
  <anchor>2constructor-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>237</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>FjMyD3B3JQEEmSpDz1wii3369EW</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructors</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The string to copy from</literal>
          </text>
        </children>
        <name>other</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The character array literal to copy from; must be null-terminated at index </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>N</literal>
              </text>
            </children>
          </code>
        </children>
        <name>txt</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The characters to store, in order</literal>
          </text>
        </children>
        <name>chars</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Tag disambiguating this overload as taking a range</literal>
          </text>
        </children>
        <name>from_range_tag</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The range of characters to copy from</literal>
          </text>
        </children>
        <name>r</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Iterator to the first character</literal>
          </text>
        </children>
        <name>begin</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Sentinel marking the end of the character sequence</literal>
          </text>
        </children>
        <name>end</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>constructor</funcClass>
  <members>2pUcZFLHc4vEKk8Sq6X4knpu5Mnx 4XA9XoSCYEHKTqVppQCJrdfwJQaW 3WtMM7PnmwdMGr8x78JnDbDYKHgT 3gt1ZqHuKfwu5MLzfriPhHEexrTJ 4KwjaK2onG8wHGJWZwb3Vwb3iYFB</members>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
</overloads>
<function>
  <name>basic_fixed_string</name>
  <anchor>2constructor-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>288</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2pUcZFLHc4vEKk8Sq6X4knpu5Mnx</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Copy constructor</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The string to copy from</literal>
          </text>
        </children>
        <name>other</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>other</name>
    </param>
  </params>
  <funcClass>constructor</funcClass>
  <isDefaulted/>
  <isExplicitlyDefaulted/>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>basic_fixed_string</name>
  <anchor>2constructor-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>249</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4XA9XoSCYEHKTqVppQCJrdfwJQaW</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs the string from a null-terminated character array literal</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The character array literal to copy from; must be null-terminated at index </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>N</literal>
              </text>
            </children>
          </code>
        </children>
        <name>txt</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <array>
              <kind>array</kind>
              <elementType>
                <named>
                  <kind>named</kind>
                  <isConst/>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </elementType>
              <bounds>
                <written>N + 1</written>
              </bounds>
            </array>
          </pointeeType>
        </lValueReference>
      </type>
      <name>txt</name>
    </param>
  </params>
  <funcClass>constructor</funcClass>
  <constexpr>consteval</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>basic_fixed_string</name>
  <anchor>2constructor-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>237</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3WtMM7PnmwdMGr8x78JnDbDYKHgT</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs the string from exactly </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>N</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> individual characters</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The characters to store, in order</literal>
          </text>
        </children>
        <name>chars</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <isPackExpansion/>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Chars</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>chars</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Chars</name>
        <isParameterPack/>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>Vne1BHMmcm9Rg1T7td1j6LZ65hv</id>
            <identifier>same_as</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                <identifier>std</identifier>
              </identifier>
            </prefix>
            <templateArgs>
              <type>
                <kind>type</kind>
                <type>
                  <named>
                    <kind>named</kind>
                    <name>
                      <identifier>
                        <kind>identifier</kind>
                        <identifier>CharT</identifier>
                      </identifier>
                    </name>
                  </named>
                </type>
              </type>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>(sizeof...(Chars) == N) &amp;&amp; (... &amp;&amp; !std::is_pointer_v&lt;Chars&gt;)</requires>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>basic_fixed_string</name>
  <anchor>2constructor-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>275</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3gt1ZqHuKfwu5MLzfriPhHEexrTJ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs the string from an input range of exactly </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>N</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> characters</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Tag disambiguating this overload as taking a range</literal>
          </text>
        </children>
        <name>from_range_tag</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The range of characters to copy from</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3f9siUw7EuxdTb8VxLveAmSuTWCZ</id>
              <identifier>from_range_t</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <name>from_range_tag</name>
    </param>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>R</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>r</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>R</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>XSSUiteoJhxzCDGoehNSMxDwawY</id>
            <identifier>input_range</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2kNzunpH8tw1w11Ntvxx22KtaK8t</id>
                <identifier>ranges</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>std::same_as&lt;std::ranges::range_value_t&lt;R&gt;, CharT&gt;</requires>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>basic_fixed_string</name>
  <anchor>2constructor-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>261</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4KwjaK2onG8wHGJWZwb3Vwb3iYFB</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs the string from a range of exactly </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>N</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> characters given by an iterator/sentinel pair</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Iterator to the first character</literal>
          </text>
        </children>
        <name>begin</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Sentinel marking the end of the character sequence</literal>
          </text>
        </children>
        <name>end</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>It</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>begin</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>S</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>end</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>It</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3roi7k3Y6RSf8dYquveimvjyUWJs</id>
            <identifier>input_iterator</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                <identifier>std</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>S</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>4693aER95uxAjZYxQ8cpZo3R8V9L</id>
            <identifier>sentinel_for</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                <identifier>std</identifier>
              </identifier>
            </prefix>
            <templateArgs>
              <type>
                <kind>type</kind>
                <type>
                  <named>
                    <kind>named</kind>
                    <name>
                      <identifier>
                        <kind>identifier</kind>
                        <identifier>It</identifier>
                      </identifier>
                    </name>
                  </named>
                </type>
              </type>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>std::same_as&lt;std::iter_value_t&lt;It&gt;, CharT&gt;</requires>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>operator=</name>
  <anchor>operator_assign</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>295</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>F45h1rKEk8cdLNiKA87cd4DHSik</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Copy assignment operator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A reference to this string</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The string to copy from</literal>
          </text>
        </children>
        <name>other</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
              <identifier>basic_fixed_string</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>other</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <isDefaulted/>
  <isExplicitlyDefaulted/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>=</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>at</name>
  <anchor>at</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>356</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4BGbRAV4oAbPCotvb1UShJH3yXH2</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Accesses the character at the given position, with bounds checking</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The character at position </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>pos</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Position of the character to return</literal>
          </text>
        </children>
        <name>pos</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>WaPFscZJWooMi1NuigJgCwCQquy</id>
          <identifier>const_reference</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2sTBubmNJggk4oBgbmbEttLvPPDA</id>
              <identifier>size_type</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>pos</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>back</name>
  <anchor>back</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>372</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2DMAYwQFQJSFdKpXYxT3Jc3WLpmt</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The last character of the string.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The last character of the string</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>WaPFscZJWooMi1NuigJgCwCQquy</id>
          <identifier>const_reference</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>begin</name>
  <anchor>begin</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>301</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>ac9Ji6q1RtmSBXbFLBS7L7C6g6Y</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>An iterator to the first character of the string.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>An iterator to the first character of the string</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>YjwkBrekrDxzG7FmcPMc53Uqkna</id>
          <identifier>const_iterator</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>c_str</name>
  <anchor>c_str</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>400</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2Bvc7EVFHY7zbSCSA3P9Vkn4JMgb</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A pointer to a null-terminated character array holding the string&apos;s contents.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A pointer to a null-terminated character array holding the string&apos;s contents</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>26x22NJv48cQDPwcPuG5J1dwUj2v</id>
          <identifier>const_pointer</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>cbegin</name>
  <anchor>cbegin</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>307</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>E5QCKvEA8ii2FzMrq6APAzibRXR</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A constant iterator to the first character of the string.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A constant iterator to the first character of the string</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>YjwkBrekrDxzG7FmcPMc53Uqkna</id>
          <identifier>const_iterator</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>cend</name>
  <anchor>cend</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>310</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2iqzpeWVMpuzz4QJ525kq8dKbA8U</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A constant iterator past the last character of the string.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A constant iterator past the last character of the string</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>YjwkBrekrDxzG7FmcPMc53Uqkna</id>
          <identifier>const_iterator</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>crbegin</name>
  <anchor>crbegin</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>319</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>qkoktvU7dbVRBJpPTQgu3ThFEgz</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A constant reverse iterator to the last character of the string.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A constant reverse iterator to the last character of the string</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>QmmGZc5t2Z4oJSoHFzi1QHsP2Tk</id>
          <identifier>const_reverse_iterator</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>crend</name>
  <anchor>crend</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>322</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>39rL3buTukbb7ukLQ1mJKevkPmnJ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A constant reverse iterator preceding the first character of the string.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A constant reverse iterator preceding the first character of the string</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>QmmGZc5t2Z4oJSoHFzi1QHsP2Tk</id>
          <identifier>const_reverse_iterator</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>data</name>
  <anchor>data</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>403</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4J4DSS5MsjWsz4rJ2E761pK9VxUL</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A pointer to the underlying null-terminated character array.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A pointer to the underlying null-terminated character array</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>26x22NJv48cQDPwcPuG5J1dwUj2v</id>
          <identifier>const_pointer</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>end</name>
  <anchor>end</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>304</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3sAg8uzFnDhHpgxV9quWJMXsUeLw</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>An iterator past the last character of the string.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>An iterator past the last character of the string</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>YjwkBrekrDxzG7FmcPMc53Uqkna</id>
          <identifier>const_iterator</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>front</name>
  <anchor>front</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>365</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3GWiv252vurU27dyxMUUKVZZJ8tf</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The first character of the string.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The first character of the string</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>WaPFscZJWooMi1NuigJgCwCQquy</id>
          <identifier>const_reference</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>operator[]</name>
  <anchor>operator_subs</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>343</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>M2p5YWdboswccS41w7TxVLnmhd4</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Accesses the character at the given position, without bounds checking</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The character at position </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>pos</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Position of the character to return</literal>
          </text>
        </children>
        <name>pos</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>WaPFscZJWooMi1NuigJgCwCQquy</id>
          <identifier>const_reference</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2sTBubmNJggk4oBgbmbEttLvPPDA</id>
              <identifier>size_type</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>pos</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>[]</overloadedOperator>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>rbegin</name>
  <anchor>rbegin</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>313</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>uFEFQE5qCoEdLBUeD3hj5MdbJFW</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A reverse iterator to the last character of the string.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A reverse iterator to the last character of the string</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>QmmGZc5t2Z4oJSoHFzi1QHsP2Tk</id>
          <identifier>const_reverse_iterator</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>rend</name>
  <anchor>rend</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>316</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>cW7HzKFQRLigSSpdkz7zeQrDFnv</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A reverse iterator preceding the first character of the string.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A reverse iterator preceding the first character of the string</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>QmmGZc5t2Z4oJSoHFzi1QHsP2Tk</id>
          <identifier>const_reverse_iterator</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>swap</name>
  <anchor>swap</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>385</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3WxopGnsNafnoZuGvUL66Hmc771P</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Exchanges the contents of this string with those of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>s</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The string to swap contents with</literal>
          </text>
        </children>
        <name>s</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
                  <identifier>basic_fixed_string</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>s</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>view</name>
  <anchor>view</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>406</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3u1zH5fGm76RtpSeQ8Wqtfxk8Fd1</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::basic_string_view</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> over the string&apos;s contents.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>std::basic_string_view</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> over the string&apos;s contents</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>479DxynkjrswieANT6sUuL6v9vKo</id>
          <identifier>basic_string_view</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>operator std::basic_string_view&lt;CharT&gt;</name>
  <anchor>2conversion</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>413</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>GHCXdWKy1Tx2Yn7CHaCTkUAwWwN</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Implicit conversion to a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::basic_string_view</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> over the string&apos;s contents.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>std::basic_string_view</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> over the string&apos;s contents</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>479DxynkjrswieANT6sUuL6v9vKo</id>
          <identifier>basic_string_view</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <funcClass>conversion</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<variable>
  <name>data_</name>
  <anchor>data_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>203</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>TeHBwygc1HX8PvchE9dRQ7wLCou</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The underlying null-terminated character storage (exposition only)</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <array>
      <kind>array</kind>
      <elementType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>CharT</identifier>
            </identifier>
          </name>
        </named>
      </elementType>
      <bounds>
        <written>N + 1</written>
      </bounds>
    </array>
  </type>
  <initializer>{}</initializer>
  <isRecordField/>
</variable>
<variable>
  <name>empty</name>
  <anchor>empty</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>333</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>44FdXbfCAGXXtqDc2sp9Mj9LKD1L</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Whether the string holds no characters</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>AGNYB6XJdoEcBSVRoP8dSJoQwno</id>
          <identifier>bool_constant</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>N == 0</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <initializer>{}</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>length</name>
  <anchor>length</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>329</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>GqivqeVYiXvXwsRwsk8mTEv7GCe</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The number of characters in the string (same as </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>size</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>)</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>45TQ1vH3By5xkPEUwikxS1nH3P92</id>
          <identifier>integral_constant</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2sTBubmNJggk4oBgbmbEttLvPPDA</id>
                      <identifier>size_type</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
            <constant>
              <kind>constant</kind>
              <value>N</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <initializer>{}</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>max_size</name>
  <anchor>max_size</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>331</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>PqD4py3bnzsytWcxATWodSZZqwa</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The maximum number of characters the string can hold (same as </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>size</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, since the length is fixed)</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>45TQ1vH3By5xkPEUwikxS1nH3P92</id>
          <identifier>integral_constant</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2sTBubmNJggk4oBgbmbEttLvPPDA</id>
                      <identifier>size_type</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
            <constant>
              <kind>constant</kind>
              <value>N</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <initializer>{}</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>size</name>
  <anchor>size</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/fixed_string.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
      <lineNumber>327</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>42yuFuhzt29bSsUovPdv1Q5w7cXk</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2vobs4J4rwmVnn95EApdmvEbr3sT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The number of characters in the string</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>45TQ1vH3By5xkPEUwikxS1nH3P92</id>
          <identifier>integral_constant</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2sTBubmNJggk4oBgbmbEttLvPPDA</id>
                      <identifier>size_type</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
            <constant>
              <kind>constant</kind>
              <value>N</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <initializer>{}</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>check_in_range</name>
  <anchor>check_in_range</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>84</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>F87UYsChLcb5FFLVJpVGe3a7XxT</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>If the quantity&apos;s representation type has a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>constraint_violation_handler</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> specialization, the handler&apos;s </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>on_violation()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is called on out-of-bounds values (providing guaranteed enforcement regardless of build mode). Otherwise, falls back to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>MP_UNITS_PRECONDITION</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, which may be disabled in release builds.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Example:</literal>
          </text>
        </children>
      </paragraph>
      <code>
        <kind>code</kind>
        <literal>{cpp}
 // With constrained&lt;double, throw_policy&gt; rep → throws std::domain_error on violation
 // With plain double rep → asserts via MP_UNITS_PRECONDITION (may be no-op in release)
 inline constexpr struct equator :
     absolute_point_origin&lt;geo_latitude, check_in_range{-90 * deg, 90 * deg}&gt; {} equator;</literal>
      </code>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Policy that checks the value is within [min, max]and reports violations.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <interface>
    <public>
      <functions>48fqfBV4VJnCZMamVLDRR5vbTSjZ</functions>
      <variables>o43FW3ULwzKXbfwDQXXbZ6SmahD 2PhQoq6oRjf2EQymRy9MJFzM4GVk</variables>
    </public>
  </interface>
</record>
<function>
  <name>operator()</name>
  <anchor>operator_call</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>94</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>48fqfBV4VJnCZMamVLDRR5vbTSjZ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>F87UYsChLcb5FFLVJpVGe3a7XxT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks that </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>v</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> lies within [</literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>min</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>max</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>]and reports a violation otherwise.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>v</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> unchanged, if it is within bounds</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to check</literal>
          </text>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>V</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>V</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>v</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>V</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
  <isConst/>
</function>
<variable>
  <name>max</name>
  <anchor>max</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/overflow_policies.h</shortPath>
        <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
        <lineNumber>87</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>o43FW3ULwzKXbfwDQXXbZ6SmahD</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>F87UYsChLcb5FFLVJpVGe3a7XxT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The upper boundary of the allowed range</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Q</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<variable>
  <name>min</name>
  <anchor>min</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/overflow_policies.h</shortPath>
        <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
        <lineNumber>86</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>2PhQoq6oRjf2EQymRy9MJFzM4GVk</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>F87UYsChLcb5FFLVJpVGe3a7XxT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The lower boundary of the allowed range</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Q</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<record>
  <name>check_non_negative</name>
  <anchor>check_non_negative</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>291</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>4ALaVjPP3BUu52Psizu1othAbYbT</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Intended for quantities that are inherently non-negative (e.g., </literal>
          </text>
          <emph>
            <kind>emph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>length</literal>
              </text>
            </children>
          </emph>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <emph>
            <kind>emph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>mass</literal>
              </text>
            </children>
          </emph>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <emph>
            <kind>emph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>duration</literal>
              </text>
            </children>
          </emph>
          <text>
            <kind>text</kind>
            <literal>). Automatically applied to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>natural_point_origin&lt;QS&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> when </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>QS</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is tagged </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>non_negative</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> in the ISQ.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>If the quantity&apos;s representation type has a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>constraint_violation_handler</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> specialization, the handler&apos;s </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>on_violation()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is called on negative values (providing guaranteed enforcement regardless of build mode). Otherwise, falls back to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>MP_UNITS_PRECONDITION</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, which may be disabled in release builds.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Policy that checks the value is ≥ 0 and reports violations.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <interface>
    <public>
      <functions>25zHTu1FDBpHrHgdTUhJydhewzcb</functions>
      <variables>zoKDHXsRfHMaY1zh88YhMZEUaNN</variables>
    </public>
  </interface>
</record>
<function>
  <name>operator()</name>
  <anchor>operator_call</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>302</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>25zHTu1FDBpHrHgdTUhJydhewzcb</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>4ALaVjPP3BUu52Psizu1othAbYbT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks that </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>v</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is non-negative and reports a violation otherwise.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>v</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> unchanged, if it is non-negative</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to check</literal>
          </text>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>V</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>V</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>v</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>V</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
  <isConst/>
</function>
<variable>
  <name>min</name>
  <anchor>min</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/overflow_policies.h</shortPath>
        <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
        <lineNumber>295</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>zoKDHXsRfHMaY1zh88YhMZEUaNN</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>4ALaVjPP3BUu52Psizu1othAbYbT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Lower domain bound: zero in any unit. Consumed by quantity_point::min() and std::numeric_limits&lt;quantity_point&gt;::lowest(). The operator() uses V::zero() directly (no unit scaling needed); this member exists solely for the numeric_limits interface.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2v4DtGJWPQkBf8Jep2MJAmFHbJfQ</id>
          <identifier>zero_quantity_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
              <identifier>detail</identifier>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<record>
  <name>clamp_non_negative</name>
  <anchor>clamp_non_negative</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>322</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2KyQjUPzytHKP8Rrm7388dZywdKJ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Saturates negative values to zero. Use when small negative values can arise from floating-point rounding in a naturally non-negative domain (e.g., a computed energy that rounds to −1e−15 J should be treated as 0 J rather than signalling an error).</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Policy that clamps the value to [0, ∞).]</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <interface>
    <public>
      <functions>m1QbG4DPxnFqs6w8Tf6kq89bBWR</functions>
      <variables>yyE5RPNrgWiczHMmryNbe4CZ6Cq</variables>
    </public>
  </interface>
</record>
<function>
  <name>operator()</name>
  <anchor>operator_call</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>331</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>m1QbG4DPxnFqs6w8Tf6kq89bBWR</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2KyQjUPzytHKP8Rrm7388dZywdKJ</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Clamps </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>v</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> to zero if it is negative.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>v</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if it is non-negative, otherwise zero</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to clamp</literal>
          </text>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>V</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>V</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>v</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>V</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
  <isConst/>
</function>
<variable>
  <name>min</name>
  <anchor>min</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/overflow_policies.h</shortPath>
        <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
        <lineNumber>324</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>yyE5RPNrgWiczHMmryNbe4CZ6Cq</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2KyQjUPzytHKP8Rrm7388dZywdKJ</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Lower domain bound: zero in any unit. See check_non_negative::min for rationale.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2v4DtGJWPQkBf8Jep2MJAmFHbJfQ</id>
          <identifier>zero_quantity_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
              <identifier>detail</identifier>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<record>
  <name>clamp_to_range</name>
  <anchor>clamp_to_range</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>121</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>KfMfbQM9UguA34Fr3YaACuPr3pL</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Saturates out-of-range values to the nearest boundary. Use when you want to &quot;correct&quot; invalid values rather than signal an error.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Policy that clamps the value to [min, max].</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <interface>
    <public>
      <functions>3EuGDjLJQC6cXXCWJbgVsksvSmrq</functions>
      <variables>3LcLgzX1eTRAsycGtAiQL9TSLSV8 3ZxAFLHDjwUjWQiXSiLNYS3zxLsH</variables>
    </public>
  </interface>
</record>
<function>
  <name>operator()</name>
  <anchor>operator_call</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>131</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3EuGDjLJQC6cXXCWJbgVsksvSmrq</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>KfMfbQM9UguA34Fr3YaACuPr3pL</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Clamps </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>v</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> to [</literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>min</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>max</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>].</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>v</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if it is within bounds, otherwise the nearest boundary</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to clamp</literal>
          </text>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>V</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>V</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>v</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>V</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
  <isConst/>
</function>
<variable>
  <name>max</name>
  <anchor>max</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/overflow_policies.h</shortPath>
        <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
        <lineNumber>124</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>3LcLgzX1eTRAsycGtAiQL9TSLSV8</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>KfMfbQM9UguA34Fr3YaACuPr3pL</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The upper boundary of the allowed range</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Q</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<variable>
  <name>min</name>
  <anchor>min</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/overflow_policies.h</shortPath>
        <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
        <lineNumber>123</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>3ZxAFLHDjwUjWQiXSiLNYS3zxLsH</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>KfMfbQM9UguA34Fr3YaACuPr3pL</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The lower boundary of the allowed range</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Q</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<record>
  <name>common_unit</name>
  <anchor>common_unit</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>726</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/bits/get_associated_quantity.h</shortPath>
        <sourcePath>src/core/include/mp-units/bits/get_associated_quantity.h</sourcePath>
        <lineNumber>32</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>Wzysgh1aqMdibSoHMsoDoeCtyG9</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>While adding two quantities of different units we can often identify which of those unit should be used to prevent data truncation. For example, adding </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>1 * m + 1 * mm</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> will end up in a quantity expressed in millimeters. However, for some cases this is not possible. Choosing any of the units from the arguments of the addition would result in a data truncation. For example, a common unit for </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>1 * km + 1 * mi</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>[8/125]m</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>. Instead of returning such a complex unit type the library will return a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>common_unit&lt;mi, km&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>. This type is convertible to both </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>mi</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>km</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> without risking data truncation, but is not equal to any of them.</literal>
          </text>
        </children>
      </paragraph>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>User should not instantiate this type! It is not exported from the C++ module. The library will instantiate this type automatically based on the unit arithmetic equation provided by the user.</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Measurement unit for an accumulation of two quantities of different units</literal>
        </text>
      </children>
    </brief>
    <related>
      <reference>
        <kind>reference</kind>
        <literal>get_common_unit</literal>
        <id>2yYD6QaUgSGQR3bCeEuMVoXcUU4e</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>get_common_unit</literal>
        <id>37jnG4rkY9ir5LkRu91mZ18vbQUc</id>
      </reference>
    </related>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U1</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>U2</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Rest</name>
        <isParameterPack/>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <isFinal/>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>_base_type_</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
          <lineNumber>727</lineNumber>
          <columnNumber>28</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>2i4iX3AJzE4yy6QjAThzTjrobbeF</typedefs>
      <staticVariables>4NzMH3bSo6v6v79sizPK81PwY49Z</staticVariables>
    </public>
  </interface>
</record>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>729</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>2i4iX3AJzE4yy6QjAThzTjrobbeF</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Wzysgh1aqMdibSoHMsoDoeCtyG9</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Exposition-only alias naming this specialization&apos;s base type.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>Wzysgh1aqMdibSoHMsoDoeCtyG9</id>
          <identifier>common_unit</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<variable>
  <name>_common_unit_</name>
  <anchor>_common_unit_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>730</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4NzMH3bSo6v6v79sizPK81PwY49Z</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>Wzysgh1aqMdibSoHMsoDoeCtyG9</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The scaled unit shared by </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>U1,</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>U2,</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> and </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Rest</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>detail::common_unit_scaled_result&lt;U1, U2, Rest...&gt;</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>constraint_violation_handler</name>
  <anchor>constraint_violation_handler</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>651</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>3r2ngEAre3tNwAJJSxdfdGZbxwJY</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The library calls </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>constraint_violation_handler&lt;Rep&gt;::on_violation(msg)</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> when a domain constraint is violated (e.g., out-of-bounds value, non-negativity).</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>No default implementation is provided. When no specialization exists for a given Rep, the library uses MP_UNITS_PRECONDITION directly (which may compile to nothing in release builds). Specializing this trait opts the type into guaranteed enforcement.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Customization point for handling domain constraint violations.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the representation type</literal>
          </text>
        </children>
        <name>Rep</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
</record>
<record>
  <name>delta_</name>
  <anchor>delta_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/construction_helpers.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/construction_helpers.h</sourcePath>
      <lineNumber>41</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>DUmhPswjMzqGF1ZTL1bMXZ94fcg</id>
  <extraction>implementation-defined</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Function object that builds a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> of reference </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>R</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a raw representation value</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>R</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <interface>
    <public>
      <functions>44iViLE6feqtXckiRoeSpxyDWG9p</functions>
    </public>
  </interface>
</record>
<function>
  <name>operator()</name>
  <anchor>operator_call</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/construction_helpers.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/construction_helpers.h</sourcePath>
      <lineNumber>49</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>44iViLE6feqtXckiRoeSpxyDWG9p</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>DUmhPswjMzqGF1ZTL1bMXZ94fcg</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> of reference </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>R</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a raw representation value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of reference </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>R</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> holding </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The raw representation value to wrap in a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity</literal>
              </text>
            </children>
          </code>
        </children>
        <name>lhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>R{}</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdRep</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>lhs</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>FwdRep</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdRep</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>get_quantity_spec(R{})</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
  <isConst/>
</function>
<record>
  <name>derived_dimension</name>
  <anchor>derived_dimension</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>191</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/dimension.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
        <lineNumber>58</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>rCAt4uvUxE3NhJXySTXTCmMyuri</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Derived dimension is an expression of the dependence of a quantity on the base quantities of a system of quantities as a product of powers of factors corresponding to the base quantities, omitting any numerical factors.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Instead of using a raw list of exponents this library decided to use symbolic expression syntax to make types more digestable for the user. The positive exponents are ordered first and all negative exponents are put as a list into the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>per&lt;...&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> class template. If a power of exponent is different than </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>1</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> the dimension type is enclosed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>power&lt;Dim, Num, Den&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> class template. Otherwise, it is just put directly in the list without any wrapper. There is also one special case. In case all of the exponents are negative than the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>dimension_one</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> being a dimension of a dimensionless quantity is put in the front to increase the readability.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>For example:</literal>
          </text>
        </children>
      </paragraph>
      <code>
        <kind>code</kind>
        <literal>using frequency = decltype(inverse(dim_time));
using speed = decltype(dim_length / dim_time);
using acceleration = decltype(dim_speed / dim_time);
using force = decltype(dim_mass * dim_acceleration);
using energy = decltype(dim_force * dim_length);
using moment_of_force = decltype(dim_length * dim_force);
using torque = decltype(dim_moment_of_force);</literal>
        <info>cpp</info>
      </code>
      <list>
        <kind>list</kind>
        <items>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>frequency</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> will be derived from type </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>derived_dimension&lt;dimension_one, per&lt;dim_time&gt;&gt;</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>speed</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> will be derived from type </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>derived_dimension&lt;dim_length, per&lt;dim_time&gt;&gt;</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>acceleration</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> will be derived from type </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>derived_dimension&lt;dim_length, per&lt;power&lt;dim_time, 2&gt;&gt;&gt;</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>force</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> will be derived from type </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>derived_dimension&lt;dim_length, dim_mass, per&lt;power&lt;dim_time, 2&gt;&gt;&gt;</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>energy</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> will be derived from type </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>derived_dimension&lt;power&lt;dim_length, 2&gt;, dim_mass, per&lt;power&lt;dim_time, 2&gt;&gt;&gt;</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
        </items>
        <listKind>unordered</listKind>
      </list>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>A common convention in this library is to assign the same name for a type and an object of this type. Besides defining them user never works with the dimension types in the source code. All operations are done on the objects. Contrarily, the dimension types are the only one visible in the compilation errors. Having them of the same names improves user experience and somehow blurs those separate domains.</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>User should not instantiate this type! It is not exported from the C++ module. The library will instantiate this type automatically based on the dimensional arithmetic equation provided by the user.</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A dimension of a derived quantity</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a parameter pack consisting tokens allowed in the dimension specification (base dimensions, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>dimension_one</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>power&lt;Dim, Num, Den&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>per&lt;...&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>)</literal>
          </text>
        </children>
        <name>Ds</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Expr</name>
        <isParameterPack/>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>46GLudu9ZqoMXDkSZbfThBPe2yPQ</id>
            <identifier>SymbolicConstant</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <isFinal/>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>14pWyqnAtWutWMZYD29PVUW3jXu</id>
              <identifier>dimension_interface</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/dimension.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
          <lineNumber>192</lineNumber>
          <columnNumber>34</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>368rhWkkRWxe5iwHzJACVakdyjPC</id>
              <identifier>derived_dimension_impl</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <isPackExpansion/>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Expr</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/dimension.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
          <lineNumber>192</lineNumber>
          <columnNumber>63</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
</record>
<record>
  <name>derived_quantity_spec</name>
  <anchor>derived_quantity_spec</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>684</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>64</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>2YoEGz9vjM3Zjb4osDptnukQH2cG</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Derived quantity is a quantity, in a system of quantities, defined in terms of other quantities of that system. Its dimension is an expression of the dependence of a quantity on the base quantities of a system of quantities as a product of powers of factors corresponding to the base quantities, omitting any numerical factors.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Instead of using a raw list of exponents this library decided to use symbolic expression syntax to make types more digestable for the user both for quantity specification and its dimension. The positive exponents are ordered first and all negative exponents are put as a list into the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>per&lt;...&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> class template. If a power of exponent is different than </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>1</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> the quantity type is enclosed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>power&lt;Q, Num, Den&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> class template. Otherwise, it is just put directly in the list without any wrapper. In case all of the exponents are negative than the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>dimensionless</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>/</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>dimension_one</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is put in the front to increase the readability.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The character of those quantities is derived from ingredients or overriden with a template parameter.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>For example:</literal>
          </text>
        </children>
      </paragraph>
      <code>
        <kind>code</kind>
        <literal>auto frequency = inverse(period_duration);
auto area = pow&lt;2&gt;(length);
auto speed = distance / duration;
auto velocity = displacement / duration;
auto acceleration = velocity / duration;</literal>
        <info>cpp</info>
      </code>
      <list>
        <kind>list</kind>
        <items>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>the type of </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>frequency</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> is </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>derived_quantity_spec&lt;dimensionless, per&lt;period_duration&gt;&gt;</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>the dimension type of </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>frequency</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> is </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>derived_dimension&lt;dimension_one, per&lt;dim_time&gt;&gt;</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>the type of </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>area</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> is </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>derived_quantity_spec&lt;power&lt;length, 2&gt;&gt;</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>the dimension type of </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>area</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> is </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>derived_dimension&lt;power&lt;dim_length, 2&gt;&gt;</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>the type of </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>speed</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> is </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>derived_quantity_spec&lt;distance, per&lt;duration&gt;&gt;</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>the dimension type of </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>speed</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> is </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>derived_dimension&lt;dim_length, per&lt;dim_time&gt;&gt;</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>the type of </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>velocity</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> is </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>derived_quantity_spec&lt;displacement, per&lt;duration&gt;&gt;</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>the dimension type of </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>velocity</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> is </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>derived_dimension&lt;dim_length, per&lt;dim_time&gt;&gt;</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>the type of </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>acceleration</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> is </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>derived_quantity_spec&lt;velocity, per&lt;duration&gt;&gt;</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>the dimension type of </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>acceleration</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> is </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>derived_dimension&lt;dim_length, per&lt;power&lt;dim_time, 2&gt;&gt;&gt;</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
        </items>
        <listKind>unordered</listKind>
      </list>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>User should not instantiate this type! It is not exported from the C++ module. The library will instantiate this type automatically based on the dimensional arithmetic equation provided by the user.</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A specification of a derived quantity</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a parameter pack consisting tokens allowed in the quantity specification (named quantity specification, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>dimensionless</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>power&lt;Q, Num, Den&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>per&lt;...&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>)</literal>
          </text>
        </children>
        <name>Expr</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Expr</name>
        <isParameterPack/>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>46GLudu9ZqoMXDkSZbfThBPe2yPQ</id>
            <identifier>SymbolicConstant</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>2dHbdnGLxs7cosxdoWtv7cFy8NMT</id>
              <identifier>derived_quantity_spec_impl</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <isPackExpansion/>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Expr</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
          <lineNumber>686</lineNumber>
          <columnNumber>32</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>9LXA63iss7wUqj8qRKELQiBBBHd B1sE8CHdeJrLvpB1KbwVFc2vRKc</typedefs>
      <staticVariables>2ceyYSs2Fd95zGq3fadBvmESteaQ 4QnvL4XEVT7146ntTRkciombP5Mc 4AXhEpNQS4Bvdn6zUhK1mJoz1ZmX 2rvpYnqNZT2GYP9wN9GsKbyqh2pL 3rDvVWgNkJCwMFVFfFh7WeD5k9bg</staticVariables>
    </public>
  </interface>
</record>
<typedef>
  <name>_base_</name>
  <anchor>_base_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>686</lineNumber>
      <columnNumber>32</columnNumber>
    </defLoc>
  </loc>
  <kind>typedef</kind>
  <id>9LXA63iss7wUqj8qRKELQiBBBHd</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>2YoEGz9vjM3Zjb4osDptnukQH2cG</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>iZRdx4G8qVDTCA4VTjhxTNkUs55</id>
          <identifier>expr_fractions</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <id>4QbdSnSogncVTvJJWScyAvQBwvux</id>
                      <identifier>dimensionless</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
            <type>
              <kind>type</kind>
              <isPackExpansion/>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Expr</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>686</lineNumber>
      <columnNumber>32</columnNumber>
    </defLoc>
  </loc>
  <kind>typedef</kind>
  <id>B1sE8CHdeJrLvpB1KbwVFc2vRKc</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>2YoEGz9vjM3Zjb4osDptnukQH2cG</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2dHbdnGLxs7cosxdoWtv7cFy8NMT</id>
          <identifier>derived_quantity_spec_impl</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<variable>
  <name>_character_</name>
  <anchor>_character_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>686</lineNumber>
      <columnNumber>32</columnNumber>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2ceyYSs2Fd95zGq3fadBvmESteaQ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>2YoEGz9vjM3Zjb4osDptnukQH2cG</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2Hv491FBzUHufEgtmwfLXcRMayVd</id>
          <identifier>quantity_character</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>detail::derived_quantity_character(typename _base_::_num_{}, typename _base_::_den_{})</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_dimension_</name>
  <anchor>_dimension_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>686</lineNumber>
      <columnNumber>32</columnNumber>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4QnvL4XEVT7146ntTRkciombP5Mc</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>2YoEGz9vjM3Zjb4osDptnukQH2cG</parent>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>detail::expr_map&lt;to_dimension, derived_dimension, struct dimension_one&gt;(_base_{})</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_is_non_negative_</name>
  <anchor>_is_non_negative_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>686</lineNumber>
      <columnNumber>32</columnNumber>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4AXhEpNQS4Bvdn6zUhK1mJoz1ZmX</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>2YoEGz9vjM3Zjb4osDptnukQH2cG</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <initializer>false</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>character</name>
  <anchor>character</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>686</lineNumber>
      <columnNumber>32</columnNumber>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2rvpYnqNZT2GYP9wN9GsKbyqh2pL</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>2YoEGz9vjM3Zjb4osDptnukQH2cG</parent>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use `get_character(qs)` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use `get_character(qs)` instead</message>
    </deprecated>
  </attributes>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2Hv491FBzUHufEgtmwfLXcRMayVd</id>
          <identifier>quantity_character</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>_character_</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>dimension</name>
  <anchor>dimension</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>686</lineNumber>
      <columnNumber>32</columnNumber>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3rDvVWgNkJCwMFVFfFh7WeD5k9bg</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>2YoEGz9vjM3Zjb4osDptnukQH2cG</parent>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use `get_dimension(qs)` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use `get_dimension(qs)` instead</message>
    </deprecated>
  </attributes>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>_dimension_</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>derived_unit</name>
  <anchor>derived_unit</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>787</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>168</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>2SWT9ZoKRYv7KojpZNV4wf8idE7X</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Derived units are defined as products of powers of the base units.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Instead of using a raw list of exponents this library decided to use expression template syntax to make types more digestable for the user. The positive exponents are ordered first and all negative exponents are put as a list into the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>per&lt;...&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> class template. If a power of exponent is different than </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>1</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> the unit type is enclosed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>power&lt;Dim, Num, Den&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> class template. Otherwise, it is just put directly in the list without any wrapper. There is also one special case. In case all of the exponents are negative then the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>one</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> being a coherent unit of a dimensionless quantity is put in the front to increase the readability.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>For example:</literal>
          </text>
        </children>
      </paragraph>
      <code>
        <kind>code</kind>
        <literal>static_assert(is_of_type&lt;inverse(second), derived_unit&lt;one, per&lt;second&gt;&gt;&gt;);
static_assert(is_of_type&lt;one / inverse(second), second&gt;);
static_assert(is_of_type&lt;one * second, second&gt;);
static_assert(is_of_type&lt;metre * metre, derived_unit&lt;power&lt;metre, 2&gt;&gt;&gt;);
static_assert(is_of_type&lt;metre * second, derived_unit&lt;metre, second&gt;&gt;);
static_assert(is_of_type&lt;metre / second, derived_unit&lt;metre, per&lt;second&gt;&gt;&gt;);
static_assert(is_of_type&lt;metre / square(second), derived_unit&lt;metre, per&lt;power&lt;second, 2&gt;&gt;&gt;&gt;);
static_assert(is_of_type&lt;watt / joule, derived_unit&lt;watt, per&lt;joule&gt;&gt;&gt;);</literal>
        <info>cpp</info>
      </code>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Every unit in the library has its internal canonical representation being the list of exponents of named base units (with the exception of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>kilogram</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> which is represented as </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>gram</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> here) and a scaling ratio represented with a magnitude.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Two units are deemed convertible if their canonical version has units of the same type. Two units are equivalent when they are convertible and their canonical versions have the same scaling ratios.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The above means that:</literal>
          </text>
        </children>
      </paragraph>
      <list>
        <kind>list</kind>
        <items>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>1/s</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> and </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>Hz</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> are both convertible and equal</literal>
                  </text>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>m</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> and </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>km</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> are convertible but not equal</literal>
                  </text>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>m</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> and </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>m²</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> ane not convertible and not equal</literal>
                  </text>
                </children>
              </paragraph>
            </blocks>
          </listItem>
        </items>
        <listKind>unordered</listKind>
      </list>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>This also means that units like </literal>
              </text>
              <code>
                <kind>code</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>hertz</literal>
                  </text>
                </children>
              </code>
              <text>
                <kind>text</kind>
                <literal> and </literal>
              </text>
              <code>
                <kind>code</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>becquerel</literal>
                  </text>
                </children>
              </code>
              <text>
                <kind>text</kind>
                <literal> are also considered convertible and equal.</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>User should not instantiate this type! It is not exported from the C++ module. The library will instantiate this type automatically based on the unit arithmetic equation provided by the user.</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Measurement unit for a derived quantity</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a parameter pack consisting tokens allowed in the unit specification (units, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>power&lt;U, Num, Den&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>per&lt;...&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>)</literal>
          </text>
        </children>
        <name>Us</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Expr</name>
        <isParameterPack/>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>46GLudu9ZqoMXDkSZbfThBPe2yPQ</id>
            <identifier>SymbolicConstant</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <isFinal/>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>3raCjU4jB2y8P1YRAAwBW8dJiEka</id>
              <identifier>derived_unit_impl</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <isPackExpansion/>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Expr</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
          <lineNumber>788</lineNumber>
          <columnNumber>29</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>RnYdh4ADsY6p1N9ixk2GLy9i5zv</typedefs>
    </public>
  </interface>
</record>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>788</lineNumber>
      <columnNumber>29</columnNumber>
    </defLoc>
  </loc>
  <kind>typedef</kind>
  <id>RnYdh4ADsY6p1N9ixk2GLy9i5zv</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>2SWT9ZoKRYv7KojpZNV4wf8idE7X</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>3raCjU4jB2y8P1YRAAwBW8dJiEka</id>
          <identifier>derived_unit_impl</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<record>
  <name>dimension_one</name>
  <anchor>dimension_one-063</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>201</lineNumber>
      <columnNumber>34</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/dimension.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
        <lineNumber>61</lineNumber>
        <columnNumber>17</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>2PgZ2ZAgs8odUE9ySmHXm77T49w4</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Dimension for which all the exponents of the factors corresponding to the base dimensions are zero. It is a dimension of a quantity of dimension one also known as &quot;dimensionless&quot;.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Dimension one</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <isFinal/>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>14pWyqnAtWutWMZYD29PVUW3jXu</id>
              <identifier>dimension_interface</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/dimension.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
          <lineNumber>202</lineNumber>
          <columnNumber>5</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>368rhWkkRWxe5iwHzJACVakdyjPC</id>
              <identifier>derived_dimension_impl</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/dimension.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
          <lineNumber>203</lineNumber>
          <columnNumber>5</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
</record>
<record>
  <name>dimension_symbol_formatting</name>
  <anchor>dimension_symbol_formatting</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>219</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>T4Fpb4JMnAKkmBrSSeJvUg59YBc</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Formatting options for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>dimension_symbol</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> and </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>dimension_symbol_to</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <interface>
    <public>
      <variables>2KogkWx4enJAe2jS6kQJKc3hdHcR</variables>
    </public>
  </interface>
</record>
<variable>
  <name>char_set</name>
  <anchor>char_set</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/dimension.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
        <lineNumber>223</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>2KogkWx4enJAe2jS6kQJKc3hdHcR</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>T4Fpb4JMnAKkmBrSSeJvUg59YBc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The character set to use when rendering a dimension symbol.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>p64pSthzNphpzitvMwpEkwsvGnj</id>
          <identifier>character_set</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>character_set::default_character_set</initializer>
  <isRecordField/>
</variable>
<record>
  <name>dimensionless</name>
  <anchor>dimensionless-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>694</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>54</lineNumber>
        <columnNumber>17</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>4QbdSnSogncVTvJJWScyAvQBwvux</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity of dimension one also commonly named as &quot;dimensionless&quot; is a quantity with a dimension for which all the exponents of the factors corresponding to the base dimensions are zero.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Quantity of dimension one</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>34sGDDhSXkFmzrFyrPzchL5XwvaZ</id>
              <identifier>quantity_spec</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2qo2BEJhYin8Wk3HYFXENwuXWSUe</id>
                  <identifier>mp_units</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <constant>
                  <kind>constant</kind>
                  <value>derived_quantity_spec&lt;&gt;{}</value>
                </constant>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
          <lineNumber>694</lineNumber>
          <columnNumber>17</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
</record>
<record>
  <name>is_kind</name>
  <anchor>is_kind-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>342</lineNumber>
      <columnNumber>18</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2MB3ehy1cfTaE6w5x5U3P5G8RCQo</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Tag property marking a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_spec</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> as the start of a new hierarchy tree of a kind</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
</record>
<record>
  <name>kind_of_</name>
  <anchor>kind_of_-00</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_concepts.h</sourcePath>
        <lineNumber>85</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>17kXrMsiY1yJcrB1zmdHp8jnWh8</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity kind encompasses the entire hierarchy tree that </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Q</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> belongs to, rather than just </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Q</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> itself.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The type of a quantity kind for the quantity specification </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Q</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the root quantity specification of the kind</literal>
          </text>
        </children>
        <name>Q</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <specializations>4482XPobfvqd7xLra3C2495VhdCm</specializations>
</record>
<record>
  <name>kind_of_</name>
  <anchor>kind_of_-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>717</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>4482XPobfvqd7xLra3C2495VhdCm</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specialization defining the quantity kind of the hierarchy tree rooted at </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Q</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the root quantity specification of the kind</literal>
          </text>
        </children>
        <name>Q</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
            <identifier>QuantitySpec</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <args>
      <type>
        <kind>type</kind>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>Q</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </type>
    </args>
    <requires>(!detail::QuantityKindSpec&lt;Q&gt;) &amp;&amp; (detail::get_kind_tree_root(Q{}) == Q{})</requires>
    <primary>17kXrMsiY1yJcrB1zmdHp8jnWh8</primary>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>_base_type_</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Q</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
          <lineNumber>717</lineNumber>
          <columnNumber>22</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>2JYeZnpQuKgVq5mPTqoNkbcL1n2Z</typedefs>
      <staticVariables>4ZBc6WoMr5s4JHncGDcHiUW9FesN 346Dqn8T33jgxAVm43AU3w2MGJwJ</staticVariables>
    </public>
  </interface>
  <isListedOnPrimary/>
</record>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>722</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>2JYeZnpQuKgVq5mPTqoNkbcL1n2Z</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>4482XPobfvqd7xLra3C2495VhdCm</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The base type used to detect specializations of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>kind_of_</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>4482XPobfvqd7xLra3C2495VhdCm</id>
          <identifier>kind_of_</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<variable>
  <name>_is_non_negative_</name>
  <anchor>_is_non_negative_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>729</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4ZBc6WoMr5s4JHncGDcHiUW9FesN</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>4482XPobfvqd7xLra3C2495VhdCm</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Always </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>false</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, as a kind can never be universally non-negative</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <initializer>false</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_quantity_spec_</name>
  <anchor>_quantity_spec_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>724</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>346Dqn8T33jgxAVm43AU3w2MGJwJ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>4482XPobfvqd7xLra3C2495VhdCm</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The root quantity specification this kind was created from</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>Q{}</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>mag_constant</name>
  <anchor>mag_constant</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_magnitude.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_magnitude.h</sourcePath>
      <lineNumber>54</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_magnitude_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_magnitude_concepts.h</sourcePath>
        <lineNumber>50</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>43kLVy1RA4toKqpt8TY9qUMqN1jY</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A named Magnitude constant identified by its symbol and, where supported, its value</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Symbol</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                <identifier>symbol_text</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>Value</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>long double</identifier>
              </identifier>
            </name>
            <fundamentalType>long double</fundamentalType>
          </named>
        </type>
      </constant>
    </params>
    <requires>(Value &gt; 0)</requires>
  </template>
  <derived>3XviX2iX7feybFxq4TBPUBqi9P4Y</derived>
  <interface>
    <public>
      <staticVariables>Qnq8GzZCEh62kLDjt9rsNeXcrFw 3xVbGDYVSY74pEvhvwr8AryoajA4</staticVariables>
    </public>
  </interface>
</record>
<variable>
  <name>_symbol_</name>
  <anchor>_symbol_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_magnitude.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_magnitude.h</sourcePath>
      <lineNumber>57</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>Qnq8GzZCEh62kLDjt9rsNeXcrFw</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>43kLVy1RA4toKqpt8TY9qUMqN1jY</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The constant&apos;s textual symbol</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>Symbol</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_value_</name>
  <anchor>_value_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_magnitude.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_magnitude.h</sourcePath>
      <lineNumber>58</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3xVbGDYVSY74pEvhvwr8AryoajA4</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>43kLVy1RA4toKqpt8TY9qUMqN1jY</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The constant&apos;s numeric value</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>long double</identifier>
        </identifier>
      </name>
      <fundamentalType>long double</fundamentalType>
    </named>
  </type>
  <initializer>Value</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>named_constant</name>
  <anchor>named_constant-03</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>59</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>jhj8wKR14Dfh4jBiozwJFmDUrsE</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Similarly to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>named_unit</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, associates a symbol with a unit, but represents a specific measured or exact value (e.g. </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>si::si2019::speed_of_light_in_vacuum</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>) rather than a unit of measurement.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A constant defined in terms of a unit</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a short text representation of the constant</literal>
          </text>
        </children>
        <name>Symbol</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit that we use to define a constant</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Symbol</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                <identifier>symbol_text</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>U</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <isParameterPack/>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <derived>3kyvLAhMrQDeszVe2Z5nAL4Bkup8</derived>
  <specializations>3GGsrCSpdRTxbMbwyV3LUcRWRD3D b9W2kNwcNGyZJuRsJx8ovpcKdiv CsrbNHa6x2nHW1vFzf2S3bL5Jdi</specializations>
</record>
<record>
  <name>named_constant</name>
  <anchor>named_constant-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>552</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3GGsrCSpdRTxbMbwyV3LUcRWRD3D</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>It is very similar to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>named_unit</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> but:</literal>
          </text>
        </children>
      </paragraph>
      <list>
        <kind>list</kind>
        <items>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>allows negative exponents in the unit definition (TODO )</literal>
                  </text>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>does not allow the constant to be associated with a </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>quantity_spec</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>does not allow the constant to be prefixed</literal>
                  </text>
                </children>
              </paragraph>
            </blocks>
          </listItem>
        </items>
        <listKind>unordered</listKind>
      </list>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Named constant definition</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a short text representation of the constant</literal>
          </text>
        </children>
        <name>Symbol</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit that we use to define a constant</literal>
          </text>
        </children>
        <name>Unit</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Symbol</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                <identifier>symbol_text</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>U</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
    <args>
      <constant>
        <kind>constant</kind>
        <value>Symbol</value>
      </constant>
      <constant>
        <kind>constant</kind>
        <value>U</value>
      </constant>
    </args>
    <requires>(!Symbol.empty())</requires>
    <primary>jhj8wKR14Dfh4jBiozwJFmDUrsE</primary>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>_base_type_</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
          <lineNumber>552</lineNumber>
          <columnNumber>36</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>2aSqskE8VSpHsFPgEvPTFq8vfiNc</typedefs>
      <staticVariables>ZBt6Z8MXe9wYumkFhvLXS4nYy7v</staticVariables>
    </public>
  </interface>
  <isListedOnPrimary/>
</record>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>554</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>2aSqskE8VSpHsFPgEvPTFq8vfiNc</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3GGsrCSpdRTxbMbwyV3LUcRWRD3D</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Exposition-only alias naming this specialization&apos;s base type.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>3GGsrCSpdRTxbMbwyV3LUcRWRD3D</id>
          <identifier>named_constant</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<variable>
  <name>_symbol_</name>
  <anchor>_symbol_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>555</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>ZBt6Z8MXe9wYumkFhvLXS4nYy7v</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3GGsrCSpdRTxbMbwyV3LUcRWRD3D</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Unique constant identifier</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>Symbol</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>named_constant</name>
  <anchor>named_constant-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>574</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>b9W2kNwcNGyZJuRsJx8ovpcKdiv</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The same as the above but additionally stores the relative standard uncertainty of a constant that is measured rather than exact by definition. The value transcribes the entry published in the source metrology table (e.g., CODATA).</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specialization for a measured constant declaring its relative standard uncertainty</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a short text representation of the constant</literal>
          </text>
        </children>
        <name>Symbol</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit that we use to define a constant</literal>
          </text>
        </children>
        <name>Unit</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the relative standard uncertainty of the measured value</literal>
          </text>
        </children>
        <name>RSU</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Symbol</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                <identifier>symbol_text</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>U</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>M</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>RSU</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <specialization>
                <kind>specialization</kind>
                <id>KvQe7W4psngLdA1A2RmypBVkB34</id>
                <identifier>relative_standard_uncertainty</identifier>
                <templateArgs>
                  <type>
                    <kind>type</kind>
                    <type>
                      <named>
                        <kind>named</kind>
                        <name>
                          <identifier>
                            <kind>identifier</kind>
                            <identifier>M</identifier>
                          </identifier>
                        </name>
                      </named>
                    </type>
                  </type>
                </templateArgs>
              </specialization>
            </name>
          </named>
        </type>
      </constant>
    </params>
    <args>
      <constant>
        <kind>constant</kind>
        <value>Symbol</value>
      </constant>
      <constant>
        <kind>constant</kind>
        <value>U</value>
      </constant>
      <constant>
        <kind>constant</kind>
        <value>RSU</value>
      </constant>
    </args>
    <requires>(!Symbol.empty()) &amp;&amp; detail::magnitude_is_positive&lt;M{}&gt;</requires>
    <primary>jhj8wKR14Dfh4jBiozwJFmDUrsE</primary>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>_base_type_</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
          <lineNumber>574</lineNumber>
          <columnNumber>41</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>36D2YJGrEWNMADY8wH7o9K9VjFuZ</typedefs>
      <staticVariables>2Lf12QKC3Q42SAJdLBqRj34Gq2sj 4PTWdzkuHybngbutfJsk8UMLBk8H</staticVariables>
    </public>
  </interface>
  <isListedOnPrimary/>
</record>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>576</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>36D2YJGrEWNMADY8wH7o9K9VjFuZ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>b9W2kNwcNGyZJuRsJx8ovpcKdiv</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Exposition-only alias naming this specialization&apos;s base type.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>b9W2kNwcNGyZJuRsJx8ovpcKdiv</id>
          <identifier>named_constant</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<variable>
  <name>_relative_standard_uncertainty_</name>
  <anchor>_relative_standard_uncertainty_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>578</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2Lf12QKC3Q42SAJdLBqRj34Gq2sj</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>b9W2kNwcNGyZJuRsJx8ovpcKdiv</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The wrapped relative standard uncertainty magnitude</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>M{}</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_symbol_</name>
  <anchor>_symbol_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>577</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4PTWdzkuHybngbutfJsk8UMLBk8H</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>b9W2kNwcNGyZJuRsJx8ovpcKdiv</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Unique constant identifier</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>Symbol</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>named_constant</name>
  <anchor>named_constant-00</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>594</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>CsrbNHa6x2nHW1vFzf2S3bL5Jdi</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The same as the above but stores the standard uncertainty in the form the source metrology table publishes it: an absolute value in a unit of the constant&apos;s own dimension. The relative form derives on demand as an exact ratio of canonical magnitudes.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specialization for a measured constant declaring its absolute standard uncertainty</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a short text representation of the constant</literal>
          </text>
        </children>
        <name>Symbol</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit that we use to define a constant</literal>
          </text>
        </children>
        <name>Unit</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the standard uncertainty of the measured value</literal>
          </text>
        </children>
        <name>SU</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Symbol</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                <identifier>symbol_text</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>U</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>SUU</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>SU</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <specialization>
                <kind>specialization</kind>
                <id>3meCZ8xJrDYoXxn83Jp1BiVHzMNw</id>
                <identifier>standard_uncertainty</identifier>
                <templateArgs>
                  <type>
                    <kind>type</kind>
                    <type>
                      <named>
                        <kind>named</kind>
                        <name>
                          <identifier>
                            <kind>identifier</kind>
                            <identifier>SUU</identifier>
                          </identifier>
                        </name>
                      </named>
                    </type>
                  </type>
                </templateArgs>
              </specialization>
            </name>
          </named>
        </type>
      </constant>
    </params>
    <args>
      <constant>
        <kind>constant</kind>
        <value>Symbol</value>
      </constant>
      <constant>
        <kind>constant</kind>
        <value>U</value>
      </constant>
      <constant>
        <kind>constant</kind>
        <value>SU</value>
      </constant>
    </args>
    <requires>(!Symbol.empty()) &amp;&amp; detail::is_positive_canonical_unit_mag&lt;SUU{}&gt; &amp;&amp; detail::ConvertibleUnits&lt;SUU{}, U&gt;</requires>
    <primary>jhj8wKR14Dfh4jBiozwJFmDUrsE</primary>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>_base_type_</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
          <lineNumber>594</lineNumber>
          <columnNumber>40</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>4QDRH8mqTt1MiKxESpcQBdX3hLjj</typedefs>
      <staticVariables>2VybJVmBhcyj7gVNZgW3zcbYPUvi 2x63e75xXpPbjcoC6x8VN9ZzbrUk</staticVariables>
    </public>
  </interface>
  <isListedOnPrimary/>
</record>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>596</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>4QDRH8mqTt1MiKxESpcQBdX3hLjj</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>CsrbNHa6x2nHW1vFzf2S3bL5Jdi</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Exposition-only alias naming this specialization&apos;s base type.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>CsrbNHa6x2nHW1vFzf2S3bL5Jdi</id>
          <identifier>named_constant</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<variable>
  <name>_standard_uncertainty_</name>
  <anchor>_standard_uncertainty_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>598</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2VybJVmBhcyj7gVNZgW3zcbYPUvi</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>CsrbNHa6x2nHW1vFzf2S3bL5Jdi</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The wrapped standard uncertainty unit expression</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>SUU{}</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_symbol_</name>
  <anchor>_symbol_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>597</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2x63e75xXpPbjcoC6x8VN9ZzbrUk</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>CsrbNHa6x2nHW1vFzf2S3bL5Jdi</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Unique constant identifier</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>Symbol</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>named_unit</name>
  <anchor>named_unit-0ec</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_concepts.h</sourcePath>
        <lineNumber>44</lineNumber>
        <columnNumber>17</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>362</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>4JCvEDranCheiYkx4ExaEFpokXvS</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Defines a unit with a special name. It may be used to provide a base unit in the system of units (e.g. </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>metre</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>) or a name assigned to another scaled or derived unit (e.g. </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>hour</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>joule</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>). Most of the named units may be composed with a prefix to create a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>prefixed_unit</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>For example:</literal>
          </text>
        </children>
      </paragraph>
      <code>
        <kind>code</kind>
        <literal>inline constexpr struct second : named_unit&lt;&quot;s&quot;, kind_of&lt;time&gt;&gt; {} second;
inline constexpr struct metre : named_unit&lt;&quot;m&quot;, kind_of&lt;length&gt; {} metre;
inline constexpr struct hertz : named_unit&lt;&quot;Hz&quot;, inverse(second), kind_of&lt;frequency&gt;&gt; {} hertz;
inline constexpr struct newton : named_unit&lt;&quot;N&quot;, kilogram * metre / square(second)&gt; {} newton;
inline constexpr struct degree_Celsius : named_unit&lt;{u8&quot;℃&quot;, &quot;`C&quot;}, kelvin, zeroth_degree_Celsius&gt; {}
degree_Celsius; inline constexpr struct minute : named_unit&lt;&quot;min&quot;, mag&lt;60&gt; * second&gt; {} minute;</literal>
        <info>cpp</info>
      </code>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>A common convention in this library is to assign the same name for a type and an object of this type. Besides defining them user never works with the unit types in the source code. All operations are done on the objects. Contrarily, the unit types are the only one visible in the compilation errors. Having them of the same names improves user experience and somehow blurs those separate domains.</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A named unit</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a short text representation of the unit</literal>
          </text>
        </children>
        <name>Symbol</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Symbol</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                <identifier>symbol_text</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <isParameterPack/>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <derived>4U9y2c4wP15dfgqAjSKnFT4PTru6 KZUH8bTAWtoaX1qhNL2CWybfDLA UTVZ53kg1TiKjeXG4a7T78rgCdF</derived>
  <specializations>2Zdqv8vGA7ZVSgQR4tZDVVmk2Wdc 2KfW3gpujut36NQC177m9o8qx4cT 4BvRV3pmqNj9BKRHHREj2rcQbQ91</specializations>
</record>
<record>
  <name>named_unit</name>
  <anchor>named_unit-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>384</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2Zdqv8vGA7ZVSgQR4tZDVVmk2Wdc</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Associates a unit with a specified base quantity. For example </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>si::metre</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is a unit to measure </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>isq::length</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> in the SI system.</literal>
          </text>
        </children>
      </paragraph>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>This is the preferred way to define a measurement unit for a specific base quantity.</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>It does not have to (or sometimes even can&apos;t) be a proper system&apos;s base unit. For example a base unit of mass in the SI is </literal>
              </text>
              <code>
                <kind>code</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>si::kilogram</literal>
                  </text>
                </children>
              </code>
              <text>
                <kind>text</kind>
                <literal> but here you are about to provide an </literal>
              </text>
              <code>
                <kind>code</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>si::gram</literal>
                  </text>
                </children>
              </code>
              <text>
                <kind>text</kind>
                <literal> and it will work just fine as those two are convertible to each other. A similar case would be the </literal>
              </text>
              <code>
                <kind>code</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>cgs::centimetre</literal>
                  </text>
                </children>
              </code>
              <text>
                <kind>text</kind>
                <literal> that is a base unit for </literal>
              </text>
              <code>
                <kind>code</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>isq::length</literal>
                  </text>
                </children>
              </code>
              <text>
                <kind>text</kind>
                <literal> in the CGS system.</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specialization for unit of a specified base quantity</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a short text representation of the unit</literal>
          </text>
        </children>
        <name>Symbol</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a specification of a base quantity to be measured with this unit</literal>
          </text>
        </children>
        <name>QuantitySpec</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit for which we provide a special name</literal>
          </text>
        </children>
        <name>Unit</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Symbol</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                <identifier>symbol_text</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
    <args>
      <constant>
        <kind>constant</kind>
        <value>Symbol</value>
      </constant>
      <constant>
        <kind>constant</kind>
        <value>U</value>
      </constant>
    </args>
    <requires>(!Symbol.empty()) &amp;&amp; detail::is_positive_canonical_unit_mag&lt;U&gt;</requires>
    <primary>4JCvEDranCheiYkx4ExaEFpokXvS</primary>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3vmqqZzaHhdZFqizjrzByokgAhr4</id>
              <identifier>unit_interface</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
          <lineNumber>384</lineNumber>
          <columnNumber>33</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>J6e4jQTmYkpEWoCaphR1WvPjtiG</typedefs>
      <staticVariables>2eJy3GpJiXiwLUceoGqZTctX99Pw 4Xkbq33R6zda11xHD2kbNkTzAZQw</staticVariables>
    </public>
  </interface>
  <isListedOnPrimary/>
</record>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>386</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>413</lineNumber>
        <columnNumber>3</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>J6e4jQTmYkpEWoCaphR1WvPjtiG</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2Zdqv8vGA7ZVSgQR4tZDVVmk2Wdc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Exposition-only alias naming this specialization&apos;s base type.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2Zdqv8vGA7ZVSgQR4tZDVVmk2Wdc</id>
          <identifier>named_unit</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<variable>
  <name>_quantity_spec_</name>
  <anchor>_quantity_spec_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>388</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2eJy3GpJiXiwLUceoGqZTctX99Pw</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2Zdqv8vGA7ZVSgQR4tZDVVmk2Wdc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The base quantity measured by this unit</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>QS</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_symbol_</name>
  <anchor>_symbol_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>387</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4Xkbq33R6zda11xHD2kbNkTzAZQw</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2Zdqv8vGA7ZVSgQR4tZDVVmk2Wdc</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Unique base unit identifier</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>Symbol</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>named_unit</name>
  <anchor>named_unit-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>394</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2KfW3gpujut36NQC177m9o8qx4cT</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The same as the above but additionally limits the usage of this unit to provided quantities.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specialization for a unit with special name valid only for a specific quantity</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a short text representation of the unit</literal>
          </text>
        </children>
        <name>Symbol</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit for which we provide a special name</literal>
          </text>
        </children>
        <name>Unit</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a specification of a quantity to be measured with this unit</literal>
          </text>
        </children>
        <name>QuantitySpec</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Symbol</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                <identifier>symbol_text</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>PO</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>EGePrTGuX3DpYGp3U33Ypfaxf72</id>
                <identifier>QuantityKindSpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
    <args>
      <constant>
        <kind>constant</kind>
        <value>Symbol</value>
      </constant>
      <constant>
        <kind>constant</kind>
        <value>U</value>
      </constant>
      <constant>
        <kind>constant</kind>
        <value>QS</value>
      </constant>
    </args>
    <requires>(!Symbol.empty()) &amp;&amp; (get_dimension(QS) == get_dimension(detail::get_associated_quantity(U))) &amp;&amp;
          detail::is_positive_canonical_unit_mag&lt;U&gt;</requires>
    <primary>4JCvEDranCheiYkx4ExaEFpokXvS</primary>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3vmqqZzaHhdZFqizjrzByokgAhr4</id>
              <identifier>unit_interface</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
          <lineNumber>394</lineNumber>
          <columnNumber>37</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>bMAE1gfZGx3pSzQXMnEEeCM7WJC</typedefs>
      <staticVariables>22U79ncHZrFPQZ9nMTd8gDnTzmLm 3nHEA9rPrC4tMptSYp8z8dR9pj3u 35BNBDY5Ut77ormht4nmTznAPiHr</staticVariables>
    </public>
  </interface>
  <isListedOnPrimary/>
</record>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>396</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>420</lineNumber>
        <columnNumber>3</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>438</lineNumber>
        <columnNumber>3</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>bMAE1gfZGx3pSzQXMnEEeCM7WJC</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2KfW3gpujut36NQC177m9o8qx4cT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Exposition-only alias naming this specialization&apos;s base type.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2KfW3gpujut36NQC177m9o8qx4cT</id>
          <identifier>named_unit</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<variable>
  <name>_point_origin_</name>
  <anchor>_point_origin_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>399</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>22U79ncHZrFPQZ9nMTd8gDnTzmLm</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2KfW3gpujut36NQC177m9o8qx4cT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The point origin associated with this unit</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>PO</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_quantity_spec_</name>
  <anchor>_quantity_spec_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>398</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3nHEA9rPrC4tMptSYp8z8dR9pj3u</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2KfW3gpujut36NQC177m9o8qx4cT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The base quantity measured by this unit</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>QS</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_symbol_</name>
  <anchor>_symbol_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>397</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>35BNBDY5Ut77ormht4nmTznAPiHr</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2KfW3gpujut36NQC177m9o8qx4cT</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Unique base unit identifier</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>Symbol</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>named_unit</name>
  <anchor>named_unit-0e4</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>456</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>4BvRV3pmqNj9BKRHHREj2rcQbQ91</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The same as the above but additionally associates the unit with a point origin.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specialization for a unit with special name, valid only for a specific quantity and point origin</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a short text representation of the unit</literal>
          </text>
        </children>
        <name>Symbol</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit for which we provide a special name</literal>
          </text>
        </children>
        <name>Unit</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a specification of a quantity to be measured with this unit</literal>
          </text>
        </children>
        <name>QuantitySpec</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a point origin associated with this unit</literal>
          </text>
        </children>
        <name>PointOrigin</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Symbol</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                <identifier>symbol_text</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>U</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>EGePrTGuX3DpYGp3U33Ypfaxf72</id>
                <identifier>QuantityKindSpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>PO</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>4NoR1GhJWMy7ThNgF4n9Se5DCrUJ</id>
                <identifier>PointOrigin</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
    <args>
      <constant>
        <kind>constant</kind>
        <value>Symbol</value>
      </constant>
      <constant>
        <kind>constant</kind>
        <value>U</value>
      </constant>
      <constant>
        <kind>constant</kind>
        <value>QS</value>
      </constant>
      <constant>
        <kind>constant</kind>
        <value>PO</value>
      </constant>
    </args>
    <requires>(!Symbol.empty()) &amp;&amp; (get_dimension(QS) == get_dimension(detail::get_associated_quantity(U))) &amp;&amp;
          detail::is_positive_canonical_unit_mag&lt;U&gt;</requires>
    <primary>4JCvEDranCheiYkx4ExaEFpokXvS</primary>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>_base_type_</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
          <lineNumber>456</lineNumber>
          <columnNumber>40</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>cfYjShJvtYDcv3mwS1SgYrQWH2X</typedefs>
      <staticVariables>3pwrYNsLQAztBU9s3r443onYMCqg MqEGkB2TqPjwzThRj4nHy3wM9VJ JahWMf35fdisEScjRaq189npdhn</staticVariables>
    </public>
  </interface>
  <isListedOnPrimary/>
</record>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>458</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>cfYjShJvtYDcv3mwS1SgYrQWH2X</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>4BvRV3pmqNj9BKRHHREj2rcQbQ91</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Exposition-only alias naming this specialization&apos;s base type.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>4BvRV3pmqNj9BKRHHREj2rcQbQ91</id>
          <identifier>named_unit</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<variable>
  <name>_point_origin_</name>
  <anchor>_point_origin_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>461</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3pwrYNsLQAztBU9s3r443onYMCqg</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>4BvRV3pmqNj9BKRHHREj2rcQbQ91</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The point origin associated with this unit</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>PO</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_quantity_spec_</name>
  <anchor>_quantity_spec_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>460</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>MqEGkB2TqPjwzThRj4nHy3wM9VJ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>4BvRV3pmqNj9BKRHHREj2rcQbQ91</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The quantity this unit is limited to</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>QS</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_symbol_</name>
  <anchor>_symbol_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>459</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>JahWMf35fdisEScjRaq189npdhn</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>4BvRV3pmqNj9BKRHHREj2rcQbQ91</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Unique unit identifier</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>Symbol</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>natural_point_origin_</name>
  <anchor>natural_point_origin_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>261</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3r2vXYd3SPieRgasCwgJtKMR29CX</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Derives from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>absolute_point_origin&lt;QS&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, additionally applying a non-negative bounds check when </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>QS</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is tagged as non-negative and has a real-scalar character.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Implementation type of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>natural_point_origin</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity specification of the quantities measured from this origin</literal>
          </text>
        </children>
        <name>QS</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
                <identifier>QuantitySpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <isFinal/>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>3ftYcM1YZJozKNoBhZc51NtYvLhK</id>
              <identifier>natural_origin_base_t</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <constant>
                  <kind>constant</kind>
                  <value>QS</value>
                </constant>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/quantity_point.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
          <lineNumber>262</lineNumber>
          <columnNumber>38</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
</record>
<record>
  <name>non_negative</name>
  <anchor>non_negative-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>346</lineNumber>
      <columnNumber>18</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2Hqo1c6uBRBLNip9ef8ZygpVS8wN</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Tag property marking a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_spec</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> as never holding a negative value</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
</record>
<record>
  <name>one</name>
  <anchor>one-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>796</lineNumber>
      <columnNumber>34</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>171</lineNumber>
        <columnNumber>17</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>4VpMfLu1y4pCm1ps5iazK1GsLpf4</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Unit of a dimensionless quantity.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Unit one</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <isFinal/>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>3raCjU4jB2y8P1YRAAwBW8dJiEka</id>
              <identifier>derived_unit_impl</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
          <lineNumber>796</lineNumber>
          <columnNumber>53</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>3x7cwXdTq474zdJRutx1a65qj9PZ</typedefs>
    </public>
  </interface>
</record>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>796</lineNumber>
      <columnNumber>53</columnNumber>
    </defLoc>
  </loc>
  <kind>typedef</kind>
  <id>3x7cwXdTq474zdJRutx1a65qj9PZ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>4VpMfLu1y4pCm1ps5iazK1GsLpf4</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>3raCjU4jB2y8P1YRAAwBW8dJiEka</id>
          <identifier>derived_unit_impl</identifier>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<record>
  <name>parts_per_million</name>
  <anchor>parts_per_million-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>48</lineNumber>
      <columnNumber>18</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>4U9y2c4wP15dfgqAjSKnFT4PTru6</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The &quot;ppm&quot; (parts per million) unit, equal to 1/1,000,000</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <isFinal/>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>4JCvEDranCheiYkx4ExaEFpokXvS</id>
              <identifier>named_unit</identifier>
              <templateArgs>
                <constant>
                  <kind>constant</kind>
                  <value>&quot;ppm&quot;</value>
                </constant>
                <constant>
                  <kind>constant</kind>
                  <value>mag_ratio&lt;1, 1000000&gt; * one</value>
                </constant>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_conversion.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
          <lineNumber>48</lineNumber>
          <columnNumber>51</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
</record>
<record>
  <name>per</name>
  <anchor>per</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
      <lineNumber>104</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3iFwv1HXbkL2pmgPELDF83QeDUnN</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Can&apos;t be empty</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Type list type storing the list of components with negative exponents</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>36j43Hebo1UtYLQdmzR1VFeV1vq2</id>
            <identifier>SymbolicArg</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Ts</name>
        <isParameterPack/>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>36j43Hebo1UtYLQdmzR1VFeV1vq2</id>
            <identifier>SymbolicArg</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <isFinal/>
</record>
<record>
  <name>per_mille</name>
  <anchor>per_mille-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>46</lineNumber>
      <columnNumber>18</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>KZUH8bTAWtoaX1qhNL2CWybfDLA</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The &quot;‰&quot; (per mille) unit, equal to 1/1000</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <isFinal/>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>4JCvEDranCheiYkx4ExaEFpokXvS</id>
              <identifier>named_unit</identifier>
              <templateArgs>
                <constant>
                  <kind>constant</kind>
                  <value>symbol_text&lt;4UL - 1, 3UL - 1&gt;{u8&quot;\342\200\260&quot;, &quot;%o&quot;}</value>
                </constant>
                <constant>
                  <kind>constant</kind>
                  <value>mag_ratio&lt;1, 1000&gt; * one</value>
                </constant>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_conversion.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
          <lineNumber>46</lineNumber>
          <columnNumber>43</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
</record>
<record>
  <name>percent</name>
  <anchor>percent-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>44</lineNumber>
      <columnNumber>18</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>UTVZ53kg1TiKjeXG4a7T78rgCdF</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The &quot;%&quot; (percent) unit, equal to 1/100</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <isFinal/>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>4JCvEDranCheiYkx4ExaEFpokXvS</id>
              <identifier>named_unit</identifier>
              <templateArgs>
                <constant>
                  <kind>constant</kind>
                  <value>&quot;%&quot;</value>
                </constant>
                <constant>
                  <kind>constant</kind>
                  <value>mag_ratio&lt;1, 100&gt; * one</value>
                </constant>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_conversion.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
          <lineNumber>44</lineNumber>
          <columnNumber>41</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
</record>
<record>
  <name>pi</name>
  <anchor>pi-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>53</lineNumber>
      <columnNumber>18</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3kyvLAhMrQDeszVe2Z5nAL4Bkup8</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The mathematical constant π, exposed as a dimensionless named constant</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <isFinal/>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>jhj8wKR14Dfh4jBiozwJFmDUrsE</id>
              <identifier>named_constant</identifier>
              <templateArgs>
                <constant>
                  <kind>constant</kind>
                  <value>symbol_text&lt;3UL - 1, 3UL - 1&gt;{u8&quot;\317\200&quot;, &quot;pi&quot;}</value>
                </constant>
                <constant>
                  <kind>constant</kind>
                  <value>mag&lt;pi_c&gt; * one</value>
                </constant>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_conversion.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
          <lineNumber>53</lineNumber>
          <columnNumber>36</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
</record>
<record>
  <name>pi_c</name>
  <anchor>pi_c-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_magnitude.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_magnitude.h</sourcePath>
      <lineNumber>127</lineNumber>
      <columnNumber>18</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3XviX2iX7feybFxq4TBPUBqi9P4Y</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A convenient Magnitude constant for pi, which we can manipulate like a regular number.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <isFinal/>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>43kLVy1RA4toKqpt8TY9qUMqN1jY</id>
              <identifier>mag_constant</identifier>
              <templateArgs>
                <constant>
                  <kind>constant</kind>
                  <value>symbol_text&lt;3UL - 1, 3UL - 1&gt;{u8&quot;\317\200&quot;, &quot;pi&quot;}</value>
                </constant>
                <constant>
                  <kind>constant</kind>
                  <value>std::numbers::pi_v&lt;long double&gt;</value>
                </constant>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_magnitude.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_magnitude.h</sourcePath>
          <lineNumber>128</lineNumber>
          <columnNumber>5</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <staticVariables>Qnq8GzZCEh62kLDjt9rsNeXcrFw 3xVbGDYVSY74pEvhvwr8AryoajA4</staticVariables>
    </public>
  </interface>
</record>
<variable>
  <name>_symbol_</name>
  <anchor>_symbol_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_magnitude.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_magnitude.h</sourcePath>
      <lineNumber>57</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>Qnq8GzZCEh62kLDjt9rsNeXcrFw</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>43kLVy1RA4toKqpt8TY9qUMqN1jY</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The constant&apos;s textual symbol</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>Symbol</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_value_</name>
  <anchor>_value_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_magnitude.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_magnitude.h</sourcePath>
      <lineNumber>58</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3xVbGDYVSY74pEvhvwr8AryoajA4</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>43kLVy1RA4toKqpt8TY9qUMqN1jY</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The constant&apos;s numeric value</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>long double</identifier>
        </identifier>
      </name>
      <fundamentalType>long double</fundamentalType>
    </named>
  </type>
  <initializer>Value</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>point_</name>
  <anchor>point_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/construction_helpers.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/construction_helpers.h</sourcePath>
      <lineNumber>57</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2PksRvMJZhCxhDF9TqFckTUnAVKW</id>
  <extraction>implementation-defined</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Function object that builds a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_point</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> of reference </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>R</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a raw representation value</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>R</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <interface>
    <public>
      <functions>3r1eXqihWVvbQy3eRVKknKZ5Z7jw</functions>
    </public>
  </interface>
</record>
<function>
  <name>operator()</name>
  <anchor>operator_call</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/construction_helpers.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/construction_helpers.h</sourcePath>
      <lineNumber>65</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3r1eXqihWVvbQy3eRVKknKZ5Z7jw</id>
  <access>public</access>
  <extraction>implementation-defined</extraction>
  <parent>2PksRvMJZhCxhDF9TqFckTUnAVKW</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_point</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> of reference </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>R</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a raw representation value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of reference </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>R</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, relative to the default point origin, holding </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The raw representation value to wrap in a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point</literal>
              </text>
            </children>
          </code>
        </children>
        <name>lhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
          <identifier>quantity_point</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>R{}</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>default_point_origin(R{})</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdRep</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>lhs</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>FwdRep</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdRep</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>get_quantity_spec(R{})</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
  <isConst/>
</function>
<record>
  <name>possibly_negative</name>
  <anchor>possibly_negative-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>354</lineNumber>
      <columnNumber>18</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3ALeFiFGBTQnjRanHVtUdmKCHnUG</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Tag property canceling an inherited </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>non_negative</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> for a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_spec</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
</record>
<record>
  <name>power</name>
  <anchor>power</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
      <lineNumber>151</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3Zru4uFNesQUfs73uWf8EGaCbWDn</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Ratio must be mathematically valid and non-negative. Negative exponents are passed to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>per&lt;...&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> with inverted sign (as positive exponents).</literal>
          </text>
        </children>
      </paragraph>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <code>
                <kind>code</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>Den</literal>
                  </text>
                </children>
              </code>
              <text>
                <kind>text</kind>
                <literal> is an optional parameter to shorten the types presented to the user in the case when </literal>
              </text>
              <code>
                <kind>code</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>Den</literal>
                  </text>
                </children>
              </code>
              <text>
                <kind>text</kind>
                <literal> equals </literal>
              </text>
              <code>
                <kind>code</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>1</literal>
                  </text>
                </children>
              </code>
              <text>
                <kind>text</kind>
                <literal>.</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Type container for exponents with ratio different than </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>1</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>factor to be raised to specified power</literal>
          </text>
        </children>
        <name>F</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Power ratio numerator</literal>
          </text>
        </children>
        <name>Num</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>[optional]Power ration denominator</literal>
          </text>
        </children>
        <name>Den</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>F</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>36j43Hebo1UtYLQdmzR1VFeV1vq2</id>
            <identifier>SymbolicArg</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
      <constant>
        <kind>constant</kind>
        <name>Num</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>int</identifier>
              </identifier>
            </name>
            <fundamentalType>int</fundamentalType>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>Den</name>
        <isParameterPack/>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>int</identifier>
              </identifier>
            </name>
            <fundamentalType>int</fundamentalType>
          </named>
        </type>
      </constant>
    </params>
    <requires>(detail::valid_ratio&lt;Num, Den...&gt; &amp;&amp; detail::positive_ratio&lt;Num, Den...&gt; &amp;&amp; !detail::ratio_one&lt;Num, Den...&gt;)</requires>
  </template>
  <isFinal/>
  <interface>
    <public>
      <typedefs>4GJGP1d6WCuZsmfh1HTYYiLSQgnA</typedefs>
      <staticVariables>36TQzecM5ByjQ7CtTSFhJCSgbEnM</staticVariables>
    </public>
  </interface>
</record>
<typedef>
  <name>_factor_</name>
  <anchor>_factor_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
        <lineNumber>155</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>4GJGP1d6WCuZsmfh1HTYYiLSQgnA</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3Zru4uFNesQUfs73uWf8EGaCbWDn</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The factor being raised to a power</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>F</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<variable>
  <name>_exponent_</name>
  <anchor>_exponent_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbolic_expression.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbolic_expression.h</sourcePath>
      <lineNumber>157</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>36TQzecM5ByjQ7CtTSFhJCSgbEnM</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3Zru4uFNesQUfs73uWf8EGaCbWDn</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The power ratio applied to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <emph>
              <kind>emph</kind>
              <children>
                <text>
                  <kind>text</kind>
                  <literal>factor</literal>
                </text>
              </children>
            </emph>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>rrAVBKwDUGZvscAUYiW43p6TNaV</id>
          <identifier>ratio</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
              <identifier>detail</identifier>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>{Num, Den...}</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>prefixed_unit</name>
  <anchor>prefixed_unit</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>673</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>MwVYJCwUkJmbMGxsVRQeFBD62sg</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Defines a new unit that is a scaled version of another unit with the scaling factor specified by a predefined prefix.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>For example:</literal>
          </text>
        </children>
      </paragraph>
      <code>
        <kind>code</kind>
        <literal>template&lt;PrefixableUnit auto U&gt;
struct kilo_ : prefixed_unit&lt;&quot;k&quot;, mag_power&lt;10, 3&gt;, U&gt; {};

template&lt;PrefixableUnit auto U&gt;
constexpr kilo_&lt;U&gt; kilo;

inline constexpr auto kilogram = si::kilo&lt;gram&gt;;</literal>
        <info>cpp</info>
      </code>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A prefixed unit</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a prefix text to prepend to a unit symbol</literal>
          </text>
        </children>
        <name>Symbol</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>scaling factor of the prefix</literal>
          </text>
        </children>
        <name>M</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a named unit to be prefixed</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Symbol</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
                <identifier>symbol_text</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>M</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>xKAh8ftVFPPg9yHq2Nj39wmoCFd</id>
                <identifier>UnitMagnitude</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>U</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>3WiMu133XMz2yEYikidcGfhQdKEy</id>
                <identifier>PrefixableUnit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
    <requires>(!Symbol.empty() &amp;&amp; M != mag&lt;1&gt;)</requires>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>PJchxsTkLdezWQPwqY6mH6A8yj9</id>
              <identifier>scaled_unit_impl</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <constant>
                  <kind>constant</kind>
                  <value>M</value>
                </constant>
                <type>
                  <kind>type</kind>
                  <type>
                    <decltype>
                      <kind>decltype</kind>
                      <operand>U</operand>
                    </decltype>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
          <lineNumber>678</lineNumber>
          <columnNumber>24</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>22EJyP9kfG3wv4ArAHbqMoiXx9Jm</typedefs>
      <staticVariables>2tLsHfpTbkkWa5GuusfXEut7PrNS 2Cf3UsYdBRVxBMErAyM8xBr2GtDM 2oC2ivgHPE4wdjRcLG7Pf36uVZyn</staticVariables>
    </public>
  </interface>
</record>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>680</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>22EJyP9kfG3wv4ArAHbqMoiXx9Jm</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>MwVYJCwUkJmbMGxsVRQeFBD62sg</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Exposition-only alias naming this specialization&apos;s base type.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>MwVYJCwUkJmbMGxsVRQeFBD62sg</id>
          <identifier>prefixed_unit</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<variable>
  <name>_mag_</name>
  <anchor>_mag_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>678</lineNumber>
      <columnNumber>24</columnNumber>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2tLsHfpTbkkWa5GuusfXEut7PrNS</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>MwVYJCwUkJmbMGxsVRQeFBD62sg</parent>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>xKAh8ftVFPPg9yHq2Nj39wmoCFd</id>
          <identifier>UnitMagnitude</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>M</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_reference_unit_</name>
  <anchor>_reference_unit_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>678</lineNumber>
      <columnNumber>24</columnNumber>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2Cf3UsYdBRVxBMErAyM8xBr2GtDM</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>MwVYJCwUkJmbMGxsVRQeFBD62sg</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>U</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>{}</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_symbol_</name>
  <anchor>_symbol_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>681</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2oC2ivgHPE4wdjRcLG7Pf36uVZyn</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>MwVYJCwUkJmbMGxsVRQeFBD62sg</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The prefixed unit&apos;s symbol, formed by prepending </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Symbol</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>U&apos;s</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> symbol</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>Symbol + U._symbol_</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>quantity</name>
  <anchor>quantity-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>595</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_concepts.h</sourcePath>
        <lineNumber>34</lineNumber>
        <columnNumber>17</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Property of a phenomenon, body, or substance, where the property has a magnitude that can be expressed by means of a number and a reference.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A quantity</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference of the quantity providing all information about quantity properties</literal>
          </text>
        </children>
        <name>R</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a type to be used to represent values of a quantity</literal>
          </text>
        </children>
        <name>Rep</name>
      </tParam>
    </tparams>
    <related>
      <reference>
        <kind>reference</kind>
        <literal>abs</literal>
        <id>HrKEdkrfR2txpFyLov2VxsioqTN</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>cbrt</literal>
        <id>JZExYYbKddEZ9SQUoddT6PG1rCV</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>ceil</literal>
        <id>2D9wrMo7Hi5v9CpzH8BGVMvfqgR9</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>delta</literal>
        <id>21ee1NG4LHf7vYX1LRzekigZmA5F</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>epsilon</literal>
        <id>2tdZ1AAwiKTs8KPywV3pUvmUD5sG</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>exp</literal>
        <id>rM4PrJXjpBDLm6fsu6BMfmwMbYC</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>floor</literal>
        <id>3BLiGn6XC9JZ6bfCxp9S76oJPU8F</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>fma</literal>
        <id>2N3SGXNEYGQSWnfrTbYdsbJK5j5c</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>fma</literal>
        <id>3xHDYPQbGL2nxMkCPESiLrSPLGNk</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>fmod</literal>
        <id>2mVQGbDNbwfBKeP9T4UQjYAekR4Z</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>hypot</literal>
        <id>VQnCACJ1uEwLggmsQ3KnEgawUUL</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>hypot</literal>
        <id>o3zbCHuDpZJM7o2z2DrGkgeCyzQ</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>inverse</literal>
        <id>36MAwFh1jeWTFV1iL9pd6VwyaYXK</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>isfinite</literal>
        <id>mJt3LejkMnAFdYL9MfBd99gDFWN</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>isinf</literal>
        <id>26RHSNxE8CwJ8tpVmtnNbjzJSSDn</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>isnan</literal>
        <id>3Y9pDzTA2xp8CPAa3Q1DW57wtvcY</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>operator*</literal>
        <id>2YmSVub2sfcZsvGsV2Wavra6o51W</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>pow</literal>
        <id>2VT7ZxvKdoYDyAopiT8QFirGTMF6</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>remainder</literal>
        <id>4H8pdkfYVY5qHRLaPo1jHuDgE8Zb</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>round</literal>
        <id>4BiwtjHCFBoNNjoP7MMWdKT6RrWx</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>sqrt</literal>
        <id>3XiPXSjoFmrqZA3npUJ69qVJNskR</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>value_cast</literal>
        <id>228iwDnVFD4rL2PgWu4ye7ixBWMo</id>
      </reference>
    </related>
  </doc>
  <keyKind>class</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
                <identifier>Reference</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <identifier>double</identifier>
                  </identifier>
                </name>
                <fundamentalType>double</fundamentalType>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>get_quantity_spec(R)</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2T4oYwVAM6kmERwtc2dpxnitdZoS</id>
              <identifier>quantity_iface</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/quantity.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
          <lineNumber>596</lineNumber>
          <columnNumber>18</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>3nHRCF2N1jUpKR3W4mUrwVHsc8mr</typedefs>
      <functions>2Uk1RKaCPLD5yrYnEqL9toNyfJyH 4EwLSR4XtqLzu2Fa9Y5MKLRkHgXq UVZUNhqPue2fYFJjxQ3mzpQc1TN 24eoqwLE5KsthvVyPRs5ooBAyk6E 2okFET4yfLXzvmgb1LGJC5UmLLDe 4P9vNReLsWxPwxahjzAqCA3x8bSa 2Ev6SpuQnumYqggLahdqpdAsjD4d 3wMJNaDkb3RrHNVGy1QHfwjG9Evy 2UqGB5WqEaPL55N3UFbdRWMcjScs Jw5JZATiA2HsQnNA12ZHhvGkCn6 NjG1rHXxkrMXtfdHVxQ5SBEhMX9 4H8PiK38GmQeWBaMM5rgAfnzip4S 3F6ijsPQzwGdPzfs87p6QcT25xp5 21zdnQxsWA9eCGMb2AFdbsJZfqDg 2mxAfwjNW8syhc9EKRwjvXBd8vsa 74t4Lr5z2BrEuvVgihAYHVG5ELj utmFCyP1gB5RXZWksgmk8mkd3SJ 2u61yFGApBPuvhW7LbmcwDJ1FEjL 2KGTpbwsk8sJTT7xHjvd4x9CJmW8</functions>
      <staticFunctions>2tLJ7iXPfHpLMYzN7oveqCtPY26U 4hmPVN3aZNjaKHcgHi5xSoT3vha 33jNSabU6e3XNwc3TAUzh8V8LwMj</staticFunctions>
      <variables>ErdEHmXqKqMW3GERJWdA8U14FMx</variables>
      <staticVariables>3fXndQTrajJD7S6eRGcy4EhaoM1N 3f57scrTc5c2PrhifaTbRZwF8pxh 3vMJXhtNsEswyjXSohecYhKtvVxZ eyyorL9F9xzC8uubD98z71UT11m sEC4TWobBWQkJieNJi5tb3N2r5c</staticVariables>
    </public>
  </interface>
  <deductionGuides>hFqLBYYZxzN2aLa5ULgKpaSTEco 2DxaWqY82yHLfWGJ1qLedk5Cjef4 291jRSrkdwmLhmqwNXiPCHwShFpi</deductionGuides>
</record>
<typedef>
  <name>rep</name>
  <anchor>rep</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
        <lineNumber>612</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>3nHRCF2N1jUpKR3W4mUrwVHsc8mr</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The type used to represent the numerical value of the quantity.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Rep</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<overloads>
  <name>quantity</name>
  <anchor>2constructor-06a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>650</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2Uk1RKaCPLD5yrYnEqL9toNyfJyH</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructors</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the source quantity to convert from</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the numerical value to store</literal>
          </text>
        </children>
        <name>val</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference whose unit is equivalent to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>unit</literal>
              </text>
            </children>
          </code>
        </children>
        <name>ref</name>
      </param>
    </params>
  </doc>
  <funcClass>constructor</funcClass>
  <members>2NfQtFirT2JjmgUcwm98gmmYtMyi 2gYUUZopUAmPuxpNxqSn8gBWZSWG 2SpJU173cEHHQBxz8wv4T6fMWBwQ 3oimbHtPghmysJ5gdTC7ADyghBPk 38WAZSkTbqNDbPGKVfW6Bw5fRvBz 4LzKT5CQoyGNsWLSTejjuRF6hx5k 2whmBgmnTJWTPcKoGcXfR2hE7gkd 4TnU92monKvXNPmAusKv3gVDj718 4WoTawQgQomBLfk7WYV6TVUdxFpu 3ba945SuqgcFLP1cWPqBgAEbdeFX</members>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
</overloads>
<function>
  <name>quantity</name>
  <anchor>2constructor-062</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>650</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2NfQtFirT2JjmgUcwm98gmmYtMyi</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Default constructor. Leaves the numerical value default-initialized.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <funcClass>constructor</funcClass>
  <isDefaulted/>
  <isExplicitlyDefaulted/>
  <isRecordMethod/>
</function>
<function>
  <name>quantity</name>
  <anchor>2constructor-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>739</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2gYUUZopUAmPuxpNxqSn8gBWZSWG</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Converting constructor from another quantity that shares an equivalent unit.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the source quantity to convert from</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R2</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep2</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>detail::QuantityConstructibleFrom&lt;quantity, quantity&lt;R2, Rep2&gt;&gt; &amp;&amp; (equivalent(unit, get_unit(R2)))</requires>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity</name>
  <anchor>2constructor-067</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>755</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2SpJU173cEHHQBxz8wv4T6fMWBwQ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Converting constructor from another quantity whose unit needs scaling to this one.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the source quantity to convert from</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R2</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep2</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>detail::QuantityConstructibleFrom&lt;quantity, quantity&lt;R2, Rep2&gt;&gt; &amp;&amp; (!equivalent(unit, get_unit(R2)))</requires>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity</name>
  <anchor>2constructor-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>701</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3oimbHtPghmysJ5gdTC7ADyghBPk</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a quantity directly from a numerical value, without an explicit reference.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the numerical value to store</literal>
          </text>
        </children>
        <name>val</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3nHRCF2N1jUpKR3W4mUrwVHsc8mr</id>
              <identifier>rep</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>val</name>
    </param>
  </params>
  <funcClass>constructor</funcClass>
  <requires>detail::ExplicitFromNumber&lt;reference&gt;</requires>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity</name>
  <anchor>2constructor-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>712</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>38WAZSkTbqNDbPGKVfW6Bw5fRvBz</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a quantity from a value convertible to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rep</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, without an explicit reference.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the numerical value to store, convertible to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rep</literal>
              </text>
            </children>
          </code>
        </children>
        <name>val</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Value</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>val</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Value</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>detail::ExplicitFromNumber&lt;reference&gt; &amp;&amp; detail::RepConstructibleFrom&lt;rep, Value&gt; &amp;&amp;
             (!std::convertible_to&lt;Value, rep&gt;)</requires>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity</name>
  <anchor>2constructor-0f0</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>724</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4LzKT5CQoyGNsWLSTejjuRF6hx5k</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deleted overload that rejects truncating conversions when constructing without a reference.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the numerical value that would be truncated when converted to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rep</literal>
              </text>
            </children>
          </code>
        </children>
        <name>val</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Value</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>val</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Value</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>detail::ExplicitFromNumber&lt;reference&gt; &amp;&amp; (!detail::RepConstructibleFrom&lt;rep, Value&gt;)</requires>
  </template>
  <funcClass>constructor</funcClass>
  <isDeleted/>
  <isDeletedAsWritten/>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity</name>
  <anchor>2constructor-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>771</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2whmBgmnTJWTPcKoGcXfR2hE7gkd</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a quantity from an external quantity-like type via </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_like_traits</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the source value, adapted through </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_like_traits&lt;Q&gt;</literal>
              </text>
            </children>
          </code>
        </children>
        <name>q</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Q</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>411DKZ7RnmHriQwPqnSswA5Vw2iM</id>
            <identifier>QuantityLike</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>detail::QuantityConstructibleFrom&lt;quantity, detail::quantity_like_type&lt;Q&gt;&gt;</requires>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity</name>
  <anchor>2constructor-0f8</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>658</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4TnU92monKvXNPmAusKv3gVDj718</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a quantity from a numerical value and a reference with an equivalent unit.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the numerical value to store</literal>
          </text>
        </children>
        <name>val</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference whose unit is equivalent to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>unit</literal>
              </text>
            </children>
          </code>
        </children>
        <name>ref</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3nHRCF2N1jUpKR3W4mUrwVHsc8mr</id>
              <identifier>rep</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>val</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>R2</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>ref</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>R2</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(equivalent(unit, get_unit(R2{})))</requires>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity</name>
  <anchor>2constructor-0fc</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>670</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4WoTawQgQomBLfk7WYV6TVUdxFpu</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deleted overload that rejects truncating conversions of the numerical value.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the numerical value that would be truncated when converted to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rep</literal>
              </text>
            </children>
          </code>
        </children>
        <name>val</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference whose unit is equivalent to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>unit</literal>
              </text>
            </children>
          </code>
        </children>
        <name>ref</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Value</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>val</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>R2</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>ref</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Value</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>R2</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(equivalent(unit, get_unit(R2{}))) &amp;&amp; (!detail::RepConstructibleFrom&lt;rep, Value&gt;)</requires>
  </template>
  <funcClass>constructor</funcClass>
  <isDeleted/>
  <isDeletedAsWritten/>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity</name>
  <anchor>2constructor-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>688</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3ba945SuqgcFLP1cWPqBgAEbdeFX</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The value is first converted to the quantity of reference </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ref</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and then scaled to this quantity&apos;s unit.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a quantity from a numerical value and a reference with a different unit.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the numerical value to store, expressed in the unit of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ref</literal>
              </text>
            </children>
          </code>
        </children>
        <name>val</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference whose unit is not equivalent to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>unit</literal>
              </text>
            </children>
          </code>
        </children>
        <name>ref</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdValue</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>val</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>R2</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>ref</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>FwdValue</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>R2</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(!equivalent(unit, get_unit(R2{}))) &amp;&amp;
            detail::QuantityConstructibleFrom&lt;quantity, quantity&lt;R2{}, std::remove_cvref_t&lt;FwdValue&gt;&gt;&gt;</requires>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>operator=</name>
  <anchor>operator_assign</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>786</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4EwLSR4XtqLzu2Fa9Y5MKLRkHgXq</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Assigns a new numerical value to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>*this</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the numerical value to assign</literal>
          </text>
        </children>
        <name>val</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
              <identifier>quantity</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdValue</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>val</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>FwdValue</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>detail::ImplicitFromNumber&lt;reference&gt; &amp;&amp; detail::RepAssignableFrom&lt;rep, FwdValue&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>=</overloadedOperator>
  <isRecordMethod/>
</function>
<overloads>
  <name>force_in</name>
  <anchor>force_in-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>881</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>UVZUNhqPue2fYFJjxQ3mzpQc1TN</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>force_in</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>to_u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>2K96L6uGnyEUpw8RLKzfy2xmPtCX 3wTwv7zgA8npuuD6ULCm9uTbwt28 41zSSNrE3wVNcsVHF2PezRbSqCcb</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
</overloads>
<function>
  <name>force_in</name>
  <anchor>force_in-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>896</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2K96L6uGnyEUpw8RLKzfy2xmPtCX</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated. Returns this quantity re-expressed with another representation type, truncating if inexact.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use `in&lt;Rep&gt;(policy)` with a rounding policy (e.g. `truncated`) instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use `in&lt;Rep&gt;(policy)` with a rounding policy (e.g. `truncated`) instead</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>std::constructible_from&lt;ToRep, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>force_in</name>
  <anchor>force_in-0d2</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>881</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3wTwv7zgA8npuuD6ULCm9uTbwt28</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated. Returns this quantity re-expressed in another unit, truncating if inexact.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>to_u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use `in(unit, policy)` with a rounding policy (e.g. `truncated`) instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use `in(unit, policy)` with a rounding policy (e.g. `truncated`) instead</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>ToU</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>to_u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToU</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>detail::ExplicitlyCastable&lt;unit, ToU{}, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>force_in</name>
  <anchor>force_in-0d8</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>911</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>41zSSNrE3wVNcsVHF2PezRbSqCcb</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated. Returns this quantity re-expressed in another unit and representation type, truncating if inexact.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>to_u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use `in&lt;Rep&gt;(unit, policy)` with a rounding policy (e.g. `truncated`) instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use `in&lt;Rep&gt;(unit, policy)` with a rounding policy (e.g. `truncated`) instead</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>ToU</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>to_u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>ToU</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>std::constructible_from&lt;ToRep, rep&gt; &amp;&amp; detail::ExplicitlyCastable&lt;unit, ToU{}, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>force_numerical_value_in</name>
  <anchor>force_numerical_value_in</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1016</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>24eoqwLE5KsthvVyPRs5ooBAyk6E</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated. Returns the numerical value converted to another unit, truncating if inexact.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The numerical value expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use `numerical_value_in(unit, policy)` with a rounding policy (e.g. `truncated`) instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use `numerical_value_in(unit, policy)` with a rounding policy (e.g. `truncated`) instead</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
          <identifier>RepresentationOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>detail::ExplicitlyCastable&lt;unit, U{}, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<overloads>
  <name>in</name>
  <anchor>in-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>800</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2okFET4yfLXzvmgb1LGJC5UmLLDe</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>in</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>to_u</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the rounding policy to apply when the conversion is not exact</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>3wGfsryDdj6akDWxPJo654BLdXR5 3nSB66HVgdG4hMeifM3fCUVAxggi QUP4i6q41Fd5egkvyyDo8fXr54t 3AcPjNWivrnwgHkPhn3tsVGbY52p 4PoyCrSsRBH6wpM9tDC5aawYwYKP 3CcqGpbkzKe1xgRASC18jLadbKnZ</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
</overloads>
<function>
  <name>in</name>
  <anchor>in-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>812</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3wGfsryDdj6akDWxPJo654BLdXR5</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns this quantity re-expressed with another representation type, in the same unit.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>detail::RepConstructibleFrom&lt;ToRep, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>in</name>
  <anchor>in-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>800</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3nSB66HVgdG4hMeifM3fCUVAxggi</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns this quantity re-expressed in another unit, implicitly convertible to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rep</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>to_u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>ToU</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>to_u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToU</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>detail::ImplicitScaling&lt;unit, ToU{}, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>in</name>
  <anchor>in-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>852</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>QUP4i6q41Fd5egkvyyDo8fXr54t</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns this quantity re-expressed with another representation type, applying an explicit rounding policy.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the rounding policy to apply when the conversion is not exact</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>std::constructible_from&lt;ToRep, rep&gt; &amp;&amp; detail::ValidRoundingPolicyFor&lt;Policy, rep, ToRep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>in</name>
  <anchor>in-09b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>825</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3AcPjNWivrnwgHkPhn3tsVGbY52p</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns this quantity re-expressed in another unit and representation type, both implicitly convertible.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>to_u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>ToU</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>to_u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>ToU</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>detail::RepConstructibleFrom&lt;ToRep, rep&gt; &amp;&amp; detail::ImplicitConversion&lt;unit, rep, ToU{}, ToRep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>in</name>
  <anchor>in-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>839</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4PoyCrSsRBH6wpM9tDC5aawYwYKP</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns this quantity re-expressed in another unit, applying an explicit rounding policy.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>to_u</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the rounding policy to apply when the conversion is not exact</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>ToU</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>to_u</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToU</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>detail::ExplicitlyCastable&lt;unit, ToU{}, rep&gt; &amp;&amp; detail::ValidRoundingPolicyFor&lt;Policy, rep, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>in</name>
  <anchor>in-09d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>866</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3CcqGpbkzKe1xgRASC18jLadbKnZ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns this quantity re-expressed in another unit and representation type, applying an explicit rounding policy.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>to_u</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the rounding policy to apply when the conversion is not exact</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>ToU</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>to_u</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>ToU</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>std::constructible_from&lt;ToRep, rep&gt; &amp;&amp; detail::ExplicitlyCastable&lt;unit, ToU{}, ToRep&gt; &amp;&amp;
             detail::ValidRoundingPolicyFor&lt;Policy, rep, ToRep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>magnitude</name>
  <anchor>magnitude</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>935</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4P9vNReLsWxPwxahjzAqCA3x8bSa</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The two-part constraint is deliberate: </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>order &gt;= vector</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is the character guard (a scalar such as </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>isq::speed</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> has no magnitude, though the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>magnitude</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> CPO would gladly run </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>std::abs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on its </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>double</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>), and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>HasMagnitude&lt;rep&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> ensures the storage can deliver one.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Returning </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>* unit</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> drops the precise </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_spec</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to the unit&apos;s kind: a V2 convenience, since V2 cannot name the right result type (a scalar-magnitude spec like </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>vec_mag&lt;isq::force&gt;[N]</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is a V3 feature). This does not fix the character in general - it collapses to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>real_scalar</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> only for units built from scalar base units (e.g. </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>km/h</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>); for one tied to a vector spec (e.g. </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>N</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>) the result keeps </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>vector</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> character, so one could even take the magnitude of a magnitude. A known V2 limitation.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the Euclidean (or, for a complex field, Hermitian) norm of a vector or tensor quantity.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The norm of the numerical value, as a scalar quantity in the same unit.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>(get_character(quantity_spec).order &gt;= quantity_tensor_order::vector) &amp;&amp; detail::HasMagnitude&lt;rep&gt;</requires>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<overloads>
  <name>numerical_value_in</name>
  <anchor>numerical_value_in-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>988</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2Ev6SpuQnumYqggLahdqpdAsjD4d</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>numerical_value_in</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The numerical value expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>u</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the rounding policy to apply when the conversion is not exact</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>2d7JRYmWig9bQpKAepdZt7viYNwX 39BTM6bpPvzeP1RM3X9t1vQnaLey</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
          <identifier>RepresentationOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
</overloads>
<function>
  <name>numerical_value_in</name>
  <anchor>numerical_value_in-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>988</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2d7JRYmWig9bQpKAepdZt7viYNwX</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the numerical value converted to another unit implicitly convertible to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rep</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The numerical value expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
          <identifier>RepresentationOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>detail::ImplicitScaling&lt;unit, U{}, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>numerical_value_in</name>
  <anchor>numerical_value_in-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1002</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>39BTM6bpPvzeP1RM3X9t1vQnaLey</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the numerical value converted to another unit, applying an explicit rounding policy.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The numerical value expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>u</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the rounding policy to apply when the conversion is not exact</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
          <identifier>RepresentationOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>detail::ExplicitlyCastable&lt;unit, U{}, rep&gt; &amp;&amp; detail::ValidRoundingPolicyFor&lt;Policy, rep, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<overloads>
  <name>numerical_value_ref_in</name>
  <anchor>numerical_value_ref_in-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>948</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>3wMJNaDkb3RrHNVGy1QHfwjG9Evy</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>numerical_value_ref_in</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A reference to the stored numerical value.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A const reference to the stored numerical value.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit equivalent to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>unit</literal>
              </text>
            </children>
          </code>
        </children>
        <name>u</name>
      </param>
    </params>
  </doc>
  <funcClass>normal</funcClass>
  <members>37wVgw62fQt2TRNqv8V8kpb6Zzkg 35co4a7yvzKavq1o76Z6U2RMExV5 S878NmvANBjGovBp1PZBcdqANBg</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>numerical_value_ref_in</name>
  <anchor>numerical_value_ref_in-098</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>948</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>37wVgw62fQt2TRNqv8V8kpb6Zzkg</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns a mutable reference to the numerical value, in a unit equivalent to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>unit</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A reference to the stored numerical value.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit equivalent to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>unit</literal>
              </text>
            </children>
          </code>
        </children>
        <name>u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3nHRCF2N1jUpKR3W4mUrwVHsc8mr</id>
              <identifier>rep</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(equivalent(U{}, unit))</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <refQualifier>&amp;</refQualifier>
</function>
<function>
  <name>numerical_value_ref_in</name>
  <anchor>numerical_value_ref_in-095</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>961</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>35co4a7yvzKavq1o76Z6U2RMExV5</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns a const reference to the numerical value, in a unit equivalent to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>unit</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A const reference to the stored numerical value.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit equivalent to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>unit</literal>
              </text>
            </children>
          </code>
        </children>
        <name>u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <isConst/>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3nHRCF2N1jUpKR3W4mUrwVHsc8mr</id>
              <identifier>rep</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(equivalent(U{}, unit))</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
  <refQualifier>&amp;</refQualifier>
</function>
<function>
  <name>numerical_value_ref_in</name>
  <anchor>numerical_value_ref_in-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>973</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>S878NmvANBjGovBp1PZBcdqANBg</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deleted overload that prevents forming a reference into a temporary quantity.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The type used to represent the numerical value of the quantity.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit equivalent to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>unit</literal>
              </text>
            </children>
          </code>
        </children>
        <name>u</name>
      </param>
    </params>
  </doc>
  <returnType>
    <rValueReference>
      <kind>rvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <isConst/>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3nHRCF2N1jUpKR3W4mUrwVHsc8mr</id>
              <identifier>rep</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </rValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(equivalent(U{}, unit))</requires>
  </template>
  <funcClass>normal</funcClass>
  <isDeleted/>
  <isDeletedAsWritten/>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
  <refQualifier>&amp;&amp;</refQualifier>
</function>
<function>
  <name>operator%=</name>
  <anchor>operator_mod_eq</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1188</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2UqGB5WqEaPL55N3UFbdRWMcjScs</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the remainder of division by another quantity and assigns it to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>*this</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the divisor quantity</literal>
          </text>
        </children>
        <name>other</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
              <identifier>quantity</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>other</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R2</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep2</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>(!treat_as_floating_point&lt;rep&gt;) &amp;&amp;
            (mp_units::implicitly_convertible(get_quantity_spec(R2), quantity_spec)) &amp;&amp;
            detail::ImplicitConversion&lt;get_unit(R2), Rep2, unit, rep&gt; &amp;&amp; requires(rep&amp; a, const Rep2 b) {
              { a %= b } -&gt; std::same_as&lt;rep&amp;&gt;;
            }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>%=</overloadedOperator>
  <isRecordMethod/>
  <refQualifier>&amp;</refQualifier>
</function>
<overloads>
  <name>operator*=</name>
  <anchor>operator_star_eq-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1210</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>Jw5JZATiA2HsQnNA12ZHhvGkCn6</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplication assignment operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the dimensionless quantity to multiply by</literal>
          </text>
        </children>
        <name>other</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the scalar value to multiply by</literal>
          </text>
        </children>
        <name>val</name>
      </param>
    </params>
  </doc>
  <funcClass>normal</funcClass>
  <overloadedOperator>*=</overloadedOperator>
  <members>47BvzTNfe9zupkwvxLjS4F12RQVw 4W8YK8tk7Br3UbJv6a53Euns2g2S</members>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
              <identifier>quantity</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
</overloads>
<function>
  <name>operator*=</name>
  <anchor>operator_star_eq-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1226</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>47BvzTNfe9zupkwvxLjS4F12RQVw</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplies </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>*this</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> by a dimensionless quantity and assigns the result to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>*this</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the dimensionless quantity to multiply by</literal>
          </text>
        </children>
        <name>other</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
              <identifier>quantity</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Q2</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>other</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q2</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>6H1jYqFL581DAuQt5uS93gLHNHG</id>
            <identifier>ImplicitFromNumberQuantity</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>detail::ScalarRepConvertible&lt;typename Q2::rep, rep&gt; &amp;&amp; requires(rep&amp; a, const Q2::rep b) {
      { a *= b } -&gt; std::same_as&lt;rep&amp;&gt;;
    }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*=</overloadedOperator>
  <isRecordMethod/>
  <refQualifier>&amp;</refQualifier>
</function>
<function>
  <name>operator*=</name>
  <anchor>operator_star_eq-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1210</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4W8YK8tk7Br3UbJv6a53Euns2g2S</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplies </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>*this</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> by a scalar value and assigns the result to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>*this</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the scalar value to multiply by</literal>
          </text>
        </children>
        <name>val</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
              <identifier>quantity</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Value</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>val</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Value</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>a64EapkSidPhroUSCEewW9H17ds</id>
            <identifier>ScalarRepConvertible</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
            <templateArgs>
              <type>
                <kind>type</kind>
                <type>
                  <named>
                    <kind>named</kind>
                    <name>
                      <identifier>
                        <kind>identifier</kind>
                        <id>3nHRCF2N1jUpKR3W4mUrwVHsc8mr</id>
                        <identifier>rep</identifier>
                      </identifier>
                    </name>
                  </named>
                </type>
              </type>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>requires(rep&amp; a, const Value b) {
      { a *= b } -&gt; std::same_as&lt;rep&amp;&gt;;
    }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*=</overloadedOperator>
  <isRecordMethod/>
  <refQualifier>&amp;</refQualifier>
</function>
<function>
  <name>operator+</name>
  <anchor>operator_plus</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1062</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>NjG1rHXxkrMXtfdHVxQ5SBEhMX9</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Applies unary </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>+</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> to the numerical value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity holding </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>+numerical_value</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, in the same reference.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>requires(const rep v) {
      { +v } -&gt; std::common_with&lt;rep&gt;;
    }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+</overloadedOperator>
  <isRecordMethod/>
  <isConst/>
</function>
<overloads>
  <name>operator++</name>
  <anchor>operator_inc-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1088</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>4H8PiK38GmQeWBaMM5rgAfnzip4S</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Increment operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the increment.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity holding the value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> before the increment.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>An unused tag parameter that distinguishes this overload as the post-increment operator.</literal>
          </text>
        </children>
        <name>unused_tag</name>
      </param>
    </params>
  </doc>
  <funcClass>normal</funcClass>
  <overloadedOperator>++</overloadedOperator>
  <members>3mXLSe8nASMkX6b83fVvjFu5zqfK 2e7Ya8i3N1AAJDAcVpHbT641iPBA</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator++</name>
  <anchor>operator_inc-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1088</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3mXLSe8nASMkX6b83fVvjFu5zqfK</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Pre-increments the numerical value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the increment.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
              <identifier>quantity</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>requires(rep&amp; v) {
      { ++v } -&gt; std::same_as&lt;rep&amp;&gt;;
    }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>++</overloadedOperator>
  <isRecordMethod/>
  <refQualifier>&amp;</refQualifier>
</function>
<function>
  <name>operator++</name>
  <anchor>operator_inc-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1104</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2e7Ya8i3N1AAJDAcVpHbT641iPBA</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Post-increments the numerical value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity holding the value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> before the increment.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>An unused tag parameter that distinguishes this overload as the post-increment operator.</literal>
          </text>
        </children>
        <name>unused_tag</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>int</identifier>
            </identifier>
          </name>
          <fundamentalType>int</fundamentalType>
        </named>
      </type>
      <name>unused_tag</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires(rep&amp; v) {
      { v++ } -&gt; std::common_with&lt;rep&gt;;
    }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>++</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator+=</name>
  <anchor>operator_plus_eq</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1148</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3F6ijsPQzwGdPzfs87p6QcT25xp5</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Adds another quantity to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>*this</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> and assigns the result to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>*this</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity to add</literal>
          </text>
        </children>
        <name>other</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
              <identifier>quantity</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>other</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R2</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep2</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>(mp_units::implicitly_convertible(get_quantity_spec(R2), quantity_spec)) &amp;&amp;
            detail::ImplicitConversion&lt;get_unit(R2), Rep2, unit, rep&gt; &amp;&amp; requires(rep&amp; a, const Rep2 b) {
              { a += b } -&gt; std::same_as&lt;rep&amp;&gt;;
            }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+=</overloadedOperator>
  <isRecordMethod/>
  <refQualifier>&amp;</refQualifier>
</function>
<function>
  <name>operator-</name>
  <anchor>operator_minus</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1075</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>21zdnQxsWA9eCGMb2AFdbsJZfqDg</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Negates the numerical value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity holding </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>-numerical_value</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, in the same reference.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>requires(const rep v) {
      { -v } -&gt; std::common_with&lt;rep&gt;;
    }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-</overloadedOperator>
  <isRecordMethod/>
  <isConst/>
</function>
<overloads>
  <name>operator--</name>
  <anchor>operator_dec-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1117</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2mxAfwjNW8syhc9EKRwjvXBd8vsa</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Decrement operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the decrement.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity holding the value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> before the decrement.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>An unused tag parameter that distinguishes this overload as the post-decrement operator.</literal>
          </text>
        </children>
        <name>unused_tag</name>
      </param>
    </params>
  </doc>
  <funcClass>normal</funcClass>
  <overloadedOperator>--</overloadedOperator>
  <members>3yoJwDGC67UfiDLd5Qe6RuWKBJ1B 3698KZ1ZLFofhomAkp8csSeWDMZF</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator--</name>
  <anchor>operator_dec-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1117</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3yoJwDGC67UfiDLd5Qe6RuWKBJ1B</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Pre-decrements the numerical value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the decrement.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
              <identifier>quantity</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>requires(rep&amp; v) {
      { --v } -&gt; std::same_as&lt;rep&amp;&gt;;
    }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>--</overloadedOperator>
  <isRecordMethod/>
  <refQualifier>&amp;</refQualifier>
</function>
<function>
  <name>operator--</name>
  <anchor>operator_dec-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1133</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3698KZ1ZLFofhomAkp8csSeWDMZF</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Post-decrements the numerical value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity holding the value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> before the decrement.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>An unused tag parameter that distinguishes this overload as the post-decrement operator.</literal>
          </text>
        </children>
        <name>unused_tag</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>int</identifier>
            </identifier>
          </name>
          <fundamentalType>int</fundamentalType>
        </named>
      </type>
      <name>unused_tag</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires(rep&amp; v) {
      { v-- } -&gt; std::common_with&lt;rep&gt;;
    }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>--</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator-=</name>
  <anchor>operator_minus_eq</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1168</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>74t4Lr5z2BrEuvVgihAYHVG5ELj</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Subtracts another quantity from </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>*this</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> and assigns the result to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>*this</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity to subtract</literal>
          </text>
        </children>
        <name>other</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
              <identifier>quantity</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>other</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R2</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep2</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>(mp_units::implicitly_convertible(get_quantity_spec(R2), quantity_spec)) &amp;&amp;
            detail::ImplicitConversion&lt;get_unit(R2), Rep2, unit, rep&gt; &amp;&amp; requires(rep&amp; a, const Rep2 b) {
              { a -= b } -&gt; std::same_as&lt;rep&amp;&gt;;
            }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-=</overloadedOperator>
  <isRecordMethod/>
  <refQualifier>&amp;</refQualifier>
</function>
<overloads>
  <name>operator/=</name>
  <anchor>operator_slash_eq-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1241</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>utmFCyP1gB5RXZWksgmk8mkd3SJ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Division assignment operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the dimensionless quantity to divide by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the scalar value to divide by</literal>
          </text>
        </children>
        <name>val</name>
      </param>
    </params>
  </doc>
  <funcClass>normal</funcClass>
  <overloadedOperator>/=</overloadedOperator>
  <members>isCWYy2kxQbriCYUCrXgMh2gAr4 mGFmeHy3nhR6v54NrBpFA9hARgx</members>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
              <identifier>quantity</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
</overloads>
<function>
  <name>operator/=</name>
  <anchor>operator_slash_eq-033</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1258</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>isCWYy2kxQbriCYUCrXgMh2gAr4</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Divides </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>*this</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> by a dimensionless quantity and assigns the result to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>*this</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the dimensionless quantity to divide by</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
              <identifier>quantity</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Q2</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q2</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>6H1jYqFL581DAuQt5uS93gLHNHG</id>
            <identifier>ImplicitFromNumberQuantity</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>detail::ScalarRepConvertible&lt;typename Q2::rep, rep&gt; &amp;&amp; requires(rep&amp; a, const Q2::rep b) {
      { a /= b } -&gt; std::same_as&lt;rep&amp;&gt;;
    }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/=</overloadedOperator>
  <isRecordMethod/>
  <refQualifier>&amp;</refQualifier>
</function>
<function>
  <name>operator/=</name>
  <anchor>operator_slash_eq-036</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1241</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>mGFmeHy3nhR6v54NrBpFA9hARgx</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Divides </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>*this</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> by a scalar value and assigns the result to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>*this</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the scalar value to divide by</literal>
          </text>
        </children>
        <name>val</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
              <identifier>quantity</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Value</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>val</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Value</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>a64EapkSidPhroUSCEewW9H17ds</id>
            <identifier>ScalarRepConvertible</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
            <templateArgs>
              <type>
                <kind>type</kind>
                <type>
                  <named>
                    <kind>named</kind>
                    <name>
                      <identifier>
                        <kind>identifier</kind>
                        <id>3nHRCF2N1jUpKR3W4mUrwVHsc8mr</id>
                        <identifier>rep</identifier>
                      </identifier>
                    </name>
                  </named>
                </type>
              </type>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>requires(rep&amp; a, const Value b) {
      { a /= b } -&gt; std::same_as&lt;rep&amp;&gt;;
    }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/=</overloadedOperator>
  <isRecordMethod/>
  <refQualifier>&amp;</refQualifier>
</function>
<function>
  <name>operator Q_</name>
  <anchor>2conversion-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1043</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2u61yFGApBPuvhW7LbmcwDJ1FEjL</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Converts the quantity to an external quantity-like type via </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_like_traits</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The value produced by </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_like_traits&lt;Q&gt;::from_numerical_value</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Q_</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q_</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>Q_</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>411DKZ7RnmHriQwPqnSswA5Vw2iM</id>
            <identifier>QuantityLike</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>detail::QuantityConstructibleFrom&lt;detail::quantity_like_type&lt;Q&gt;, quantity&gt;</requires>
  </template>
  <funcClass>conversion</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>operator V_</name>
  <anchor>2conversion-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>1031</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2KGTpbwsk8sJTT7xHjvd4x9CJmW8</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Explicitly converts the quantity to its bare numerical value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The stored numerical value.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>V_</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>V_</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Value</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>V_</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>4SnJ9tCQK9kAZfoe6bFXpBK1muPu</id>
            <identifier>constructible_from</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                <identifier>std</identifier>
              </identifier>
            </prefix>
            <templateArgs>
              <type>
                <kind>type</kind>
                <type>
                  <named>
                    <kind>named</kind>
                    <name>
                      <identifier>
                        <kind>identifier</kind>
                        <id>3nHRCF2N1jUpKR3W4mUrwVHsc8mr</id>
                        <identifier>rep</identifier>
                      </identifier>
                    </name>
                  </named>
                </type>
              </type>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>detail::ExplicitFromNumber&lt;reference&gt;</requires>
  </template>
  <funcClass>conversion</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
  <refQualifier>&amp;</refQualifier>
</function>
<function>
  <name>max</name>
  <anchor>max</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>642</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2tLJ7iXPfHpLMYzN7oveqCtPY26U</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns a quantity holding the representation type&apos;s highest finite value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity equal to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>representation_values&lt;rep&gt;::max()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>reference</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>requires { representation_values&lt;rep&gt;::max(); }</requires>
  <constexpr>constexpr</constexpr>
  <storageClass>static</storageClass>
  <isRecordMethod/>
</function>
<function>
  <name>min</name>
  <anchor>min</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>631</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4hmPVN3aZNjaKHcgHi5xSoT3vha</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns a quantity holding the representation type&apos;s lowest finite value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity equal to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>representation_values&lt;rep&gt;::min()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>reference</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>requires { representation_values&lt;rep&gt;::min(); }</requires>
  <constexpr>constexpr</constexpr>
  <storageClass>static</storageClass>
  <isRecordMethod/>
</function>
<function>
  <name>zero</name>
  <anchor>zero</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>620</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>33jNSabU6e3XNwc3TAUzh8V8LwMj</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns a quantity holding the representation type&apos;s zero value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity equal to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>representation_values&lt;rep&gt;::zero()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>reference</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>requires { representation_values&lt;rep&gt;::zero(); }</requires>
  <constexpr>constexpr</constexpr>
  <storageClass>static</storageClass>
  <isRecordMethod/>
</function>
<variable>
  <name>numerical_value_is_an_implementation_detail_</name>
  <anchor>numerical_value_is_an_implementation_detail_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
        <lineNumber>598</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>ErdEHmXqKqMW3GERJWdA8U14FMx</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>needs to be public for a structural type</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Rep</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<variable>
  <name>character</name>
  <anchor>character</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>608</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3fXndQTrajJD7S6eRGcy4EhaoM1N</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The quantity character (tensor order and numeric field) extracted from </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_spec</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2Hv491FBzUHufEgtmwfLXcRMayVd</id>
          <identifier>quantity_character</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>get_character(quantity_spec)</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>dimension</name>
  <anchor>dimension</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>606</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3f57scrTc5c2PrhifaTbRZwF8pxh</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The dimension extracted from </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_spec</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>get_dimension(quantity_spec)</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>quantity_spec</name>
  <anchor>quantity_spec</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>604</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3vMJXhtNsEswyjXSohecYhKtvVxZ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The quantity specification extracted from </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>reference</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
          <identifier>QuantitySpec</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>get_quantity_spec(reference)</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>reference</name>
  <anchor>reference</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>602</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>eyyorL9F9xzC8uubD98z71UT11m</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The reference of the quantity, as provided via the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>R</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> template parameter.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
          <identifier>Reference</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>R</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>unit</name>
  <anchor>unit</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
      <lineNumber>610</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>sEC4TWobBWQkJieNJi5tb3N2r5c</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>LEdUDoZpqttStUmCqXAEr1XZtHB</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The unit extracted from </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>reference</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
          <identifier>Unit</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>get_unit(reference)</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>quantity_character</name>
  <anchor>quantity_character</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_character.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
      <lineNumber>105</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2Hv491FBzUHufEgtmwfLXcRMayVd</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity character classifies a quantity along two orthogonal axes:</literal>
          </text>
        </children>
      </paragraph>
      <list>
        <kind>list</kind>
        <items>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>its </literal>
                  </text>
                  <emph>
                    <kind>emph</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>tensor order</literal>
                      </text>
                    </children>
                  </emph>
                  <text>
                    <kind>text</kind>
                    <literal> (</literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>quantity_tensor_order</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal>): scalar (order 0), vector (order 1), or tensor (order 2), and</literal>
                  </text>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <text>
                    <kind>text</kind>
                    <literal>its </literal>
                  </text>
                  <emph>
                    <kind>emph</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>numeric field</literal>
                      </text>
                    </children>
                  </emph>
                  <text>
                    <kind>text</kind>
                    <literal> (</literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>quantity_field</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal>): real or complex.</literal>
                  </text>
                </children>
              </paragraph>
            </blocks>
          </listItem>
        </items>
        <listKind>unordered</listKind>
      </list>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Scalars, vectors, and tensors are mathematical objects independent of the choice of a coordinate system, whereas their components depend on it. A scalar has magnitude but no direction; a vector possesses both magnitude and direction; a tensor (for example the Cauchy stress tensor) additionally carries orientation. The numeric field separately distinguishes real quantities from complex ones (such as a voltage phasor or a complex permittivity), which affects the operations a quantity admits.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The pre-2.6.0 flat spelling (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_character::real_scalar</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>::complex_scalar</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>::vector</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>::tensor</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>) remains available for backward compatibility and maps onto the two axes.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Quantity character</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <interface>
    <public>
      <functions>2DLKomTTkVcaBxnG1ARwHAneNi1V</functions>
      <variables>2uTLoQ29EZxSxTHsP1ztFJ3Fo2fF 35w1Tcy35Lca4NLWhASHnY5wxf2G</variables>
    </public>
  </interface>
  <friends>
    <friendInfo>
      <id>5c6rxDcpk9TijRZBctyXozgy8pp</id>
    </friendInfo>
    <friendInfo>
      <id>Hm3RJGbL47k8d34w8Joh4c8zGCZ</id>
    </friendInfo>
  </friends>
</record>
<overloads>
  <name>quantity_character</name>
  <anchor>2constructor-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_character.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
      <lineNumber>117</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2DLKomTTkVcaBxnG1ARwHAneNi1V</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2Hv491FBzUHufEgtmwfLXcRMayVd</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructors</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The flat character value to translate onto the two-axis representation.</literal>
          </text>
        </children>
        <name>legacy</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The numeric field axis.</literal>
          </text>
        </children>
        <name>numeric_field</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The tensor order axis.</literal>
          </text>
        </children>
        <name>tensor_order</name>
      </param>
    </params>
  </doc>
  <funcClass>constructor</funcClass>
  <members>QsqpMottyeHaPkDXUQEv9zmaQF3 2sUWfRy7UfZCcwoq45778enDGDhN 394kR9xSRKVt3UGKT2NJErLFpswo 4Dj4FEomhjL9zjHpes1ZfFDfy6Ua 3HUZEh1iiPUPrDid9pVwAa8CoGqP</members>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
</overloads>
<function>
  <name>quantity_character</name>
  <anchor>2constructor-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_character.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
      <lineNumber>117</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>QsqpMottyeHaPkDXUQEv9zmaQF3</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2Hv491FBzUHufEgtmwfLXcRMayVd</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a scalar, real quantity character</literal>
        </text>
      </children>
    </brief>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <funcClass>constructor</funcClass>
  <isDefaulted/>
  <isExplicitlyDefaulted/>
  <constexpr>consteval</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity_character</name>
  <anchor>2constructor-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_character.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
      <lineNumber>150</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2sUWfRy7UfZCcwoq45778enDGDhN</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2Hv491FBzUHufEgtmwfLXcRMayVd</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a quantity character from the pre-2.6.0 flat spelling</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The flat character value to translate onto the two-axis representation.</literal>
          </text>
        </children>
        <name>legacy</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3rPzTGJwW8XixHbnVJN6sJFFPksg</id>
              <identifier>quantity_character_legacy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>legacy</name>
    </param>
  </params>
  <funcClass>constructor</funcClass>
  <constexpr>consteval</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity_character</name>
  <anchor>2constructor-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_character.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
      <lineNumber>142</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>394kR9xSRKVt3UGKT2NJErLFpswo</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2Hv491FBzUHufEgtmwfLXcRMayVd</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a scalar quantity character with the given numeric field</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The numeric field axis.</literal>
          </text>
        </children>
        <name>numeric_field</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>NDjCLK6Czy4KDn8XVDNpzkhL9BM</id>
              <identifier>quantity_field</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>numeric_field</name>
    </param>
  </params>
  <funcClass>constructor</funcClass>
  <constexpr>consteval</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity_character</name>
  <anchor>2constructor-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_character.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
      <lineNumber>135</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4Dj4FEomhjL9zjHpes1ZfFDfy6Ua</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2Hv491FBzUHufEgtmwfLXcRMayVd</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a real quantity character with the given tensor order</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The tensor order axis.</literal>
          </text>
        </children>
        <name>tensor_order</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>nJoSptYF9go7dPKS8BAfAUiD1bP</id>
              <identifier>quantity_tensor_order</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>tensor_order</name>
    </param>
  </params>
  <funcClass>constructor</funcClass>
  <constexpr>consteval</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity_character</name>
  <anchor>2constructor-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_character.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
      <lineNumber>125</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3HUZEh1iiPUPrDid9pVwAa8CoGqP</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2Hv491FBzUHufEgtmwfLXcRMayVd</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a quantity character from both axes</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The tensor order axis.</literal>
          </text>
        </children>
        <name>tensor_order</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The numeric field axis.</literal>
          </text>
        </children>
        <name>numeric_field</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>nJoSptYF9go7dPKS8BAfAUiD1bP</id>
              <identifier>quantity_tensor_order</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>tensor_order</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>NDjCLK6Czy4KDn8XVDNpzkhL9BM</id>
              <identifier>quantity_field</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>numeric_field</name>
    </param>
  </params>
  <funcClass>constructor</funcClass>
  <constexpr>consteval</constexpr>
  <isRecordMethod/>
</function>
<variable>
  <name>field</name>
  <anchor>field</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_character.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
        <lineNumber>112</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>2uTLoQ29EZxSxTHsP1ztFJ3Fo2fF</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2Hv491FBzUHufEgtmwfLXcRMayVd</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The numeric field axis (defaults to real).</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>NDjCLK6Czy4KDn8XVDNpzkhL9BM</id>
          <identifier>quantity_field</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>quantity_field::real</initializer>
  <isRecordField/>
</variable>
<variable>
  <name>order</name>
  <anchor>order</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_character.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
        <lineNumber>111</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>35w1Tcy35Lca4NLWhASHnY5wxf2G</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2Hv491FBzUHufEgtmwfLXcRMayVd</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The tensor order axis (defaults to scalar).</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>nJoSptYF9go7dPKS8BAfAUiD1bP</id>
          <identifier>quantity_tensor_order</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>quantity_tensor_order::scalar</initializer>
  <isRecordField/>
</variable>
<record>
  <name>quantity_like_traits</name>
  <anchor>quantity_like_traits</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>681</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>vwZNR3M7EB8zgNmAuTuHFG26rMF</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The type trait should provide the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>reference</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> object, a type alias </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rep,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and static member functions </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_numerical_value(T)</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> that returns the raw value of the quantity and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>from_numerical_value(rep)</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> that returns </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rep.</literal>
              </text>
            </children>
          </code>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>If the following expression is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> the specified conversion will be explicit:</literal>
          </text>
        </children>
      </paragraph>
      <list>
        <kind>list</kind>
        <items>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>explicit_import</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> for the conversion from </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>T</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> to a </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>quantity</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> type,</literal>
                  </text>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>explicit_export</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> for the conversion from a </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>quantity</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> type to </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>T.</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
        </items>
        <listKind>unordered</listKind>
      </list>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Usage example can be found in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>mp-units/systems/si/chrono.h</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> header file.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Provides support for external quantity-like types</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the type to provide support for</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
</record>
<record>
  <name>quantity_point</name>
  <anchor>quantity_point-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>586</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point_concepts.h</sourcePath>
        <lineNumber>107</lineNumber>
        <columnNumber>17</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>An absolute quantity measured from an origin.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A quantity point</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference of the quantity point providing all information about quantity properties</literal>
          </text>
        </children>
        <name>R</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a type that represents the origin point from which the quantity point is measured from</literal>
          </text>
        </children>
        <name>PO</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a type to be used to represent values of a quantity point</literal>
          </text>
        </children>
        <name>Rep</name>
      </tParam>
    </tparams>
    <related>
      <reference>
        <kind>reference</kind>
        <literal>absolute</literal>
        <id>34tTQidX6id7wgchZkJ2WZz4iANE</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>ceil</literal>
        <id>4CLKudXxT1sBgxwAzSUJuCMepXtL</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>floor</literal>
        <id>4YFJahKF7fHiKfQq2HLuQv1Eyz32</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>isfinite</literal>
        <id>42HcJRNH8Pa9ABp1B3NaoJRLYyzP</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>isinf</literal>
        <id>4R8yJqKSLQSFiDMvRPJrYXgmJbvZ</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>isnan</literal>
        <id>32XC7XTVTzPzir3eK7gPvcPMpUyg</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>lerp</literal>
        <id>eHaYzTDunYac8NNqmWZcDLSCKkY</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>midpoint</literal>
        <id>3UqzWL6jFPAeDBFLNDchRyrw8aDU</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>point</literal>
        <id>4KgZnaFDataWaAxxtenhyF5wCdT1</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>round</literal>
        <id>3jqbUTxXcZidqaPYedPeWbRcBxB5</id>
      </reference>
      <reference>
        <kind>reference</kind>
        <literal>value_cast</literal>
        <id>3imSVyQABZQbHp2D9Tyn9byFGzZr</id>
      </reference>
    </related>
  </doc>
  <keyKind>class</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
                <identifier>Reference</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>PO</name>
        <default>
          <constant>
            <kind>constant</kind>
            <value>default_point_origin(R)</value>
          </constant>
        </default>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <specialization>
                <kind>specialization</kind>
                <id>2aXKW9wnyinkHgp4PdNJx1dVcXRf</id>
                <identifier>PointOriginFor</identifier>
                <templateArgs>
                  <constant>
                    <kind>constant</kind>
                    <value>get_quantity_spec(R)</value>
                  </constant>
                </templateArgs>
              </specialization>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <identifier>double</identifier>
                  </identifier>
                </name>
                <fundamentalType>double</fundamentalType>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>get_quantity_spec(R)</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3fQ2bmpbSPUFA1pnpboFmFN3vkzk</id>
              <identifier>quantity_point_iface</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/quantity_point.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
          <lineNumber>588</lineNumber>
          <columnNumber>24</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>24HAxnZXj6UYqKwJXqaLbr69pxqX CDWAbaZEANaBvdawAwVoysrdvte</typedefs>
      <functions>2dypjPMRfCVBkLK1pJUYBiAAkBLL sZRoQp71dY83pHTjrNKnsFngKVu o9SgX9HNmsqn9PJcgdPtP3TboJM 3QfcoAYzSFZJxwXasJkgNkqJqzSv 2vpTMF6XySEC5s7QeZuetssgXP7g 45GXZwfJeC9tJy9RYC7FcSSnfYhR 37GGr3xVx1F9j3BfpokrQtfHpusU 4RVTGuxfWv94noTeuUwbEXP2tTRp euwMHz83Su7rmGBJejUEBtsfodW 4FWqBCLJhTM9NbPdHLGa4ptHeXpQ 5SQnG9VYCk7HbtJCMxzZHuACAgj 3GttcM9ckxFFwMznafRG7EUNRBc9 2K7r9cZjYezxhW36xwRhgURWA6jE Bv2F7Af9VB7afwQhTRRLSfEApRW</functions>
      <staticFunctions>4KvKvtxy9SmdmTwcis3X1EVPtB4s 2bn6EPYcDSGFp1paoQm2LSa8VwGe ZYWu49U7ooyDMQCLxYzLiUZwV2s</staticFunctions>
      <variables>2FXxZKPHdvxjJ6W9dw2g9eouKoBn</variables>
      <staticVariables>4BG1LiyxvfrnQZ6rpVmY2k7inPhR 3XzGwXnWEzXBjn2wX9FMb6y3s1rQ kEkmUJdTmiGph4hwNVWt1vKgAxE ZfWwdajYgu6g7qvDom7cLLb1NZo 8kVGbe51ZS3ZWCxzaQVfhugMcmb 3hpRFAbYw97dHUTDCo5a9wc3VMtp hTvTorLLqfUhZKB8K8uY3tCCLYt</staticVariables>
    </public>
  </interface>
  <deductionGuides>3kuPnrykinfBiDJeN55VK4dfnKZy zTEG4PozDqx8ZVD19iNxC4haTL7 3qCjp4xLtb2hieJDq6ziwfzDEgRv</deductionGuides>
</record>
<typedef>
  <name>quantity_type</name>
  <anchor>quantity_type</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
        <lineNumber>609</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>24HAxnZXj6UYqKwJXqaLbr69pxqX</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> type used to store the offset of this quantity point from </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>point_origin</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>reference</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<typedef>
  <name>rep</name>
  <anchor>rep</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
        <lineNumber>607</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>CDWAbaZEANaBvdawAwVoysrdvte</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The type used to represent the numerical value of the quantity point.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Rep</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<overloads>
  <name>quantity_point</name>
  <anchor>2constructor-075</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>665</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2dypjPMRfCVBkLK1pJUYBiAAkBLL</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructors</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the source quantity point to convert from</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity giving the offset from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the point origin the quantity is measured from, equal to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
        </children>
        <name>po</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>constructor</funcClass>
  <members>2mCmJ86yjjfuwhT2RoorFXKtRFKg 33vLsFZbpFKwdtZmb3CxTkCe53Bp 2jrB5Me32apztpXx7VTq7tKrR2oy AUVLRMeFM6mJFrmu4UXb4h2Mp5M 3ZzpjVF6aPA8Tzfgi7y4CfaEVRRW a1MZoyEivMA2fYNPUrJf6CRDmsw 2s4inLVQcGEiBj9zuEGBiTq3UKuC</members>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
</overloads>
<function>
  <name>quantity_point</name>
  <anchor>2constructor-07e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>665</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2mCmJ86yjjfuwhT2RoorFXKtRFKg</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Default constructor. Leaves the underlying quantity default-initialized.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <funcClass>constructor</funcClass>
  <isDefaulted/>
  <isExplicitlyDefaulted/>
  <isRecordMethod/>
</function>
<function>
  <name>quantity_point</name>
  <anchor>2constructor-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>741</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>33vLsFZbpFKwdtZmb3CxTkCe53Bp</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Re-expresses </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>qp</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> at </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> via </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_for</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, which requires a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>frame_projection</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> between the two absolute point origins to be defined.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Converting constructor from a quantity point anchored to a different absolute point origin.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the source quantity point to convert from</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>QP</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>qp</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
            <identifier>QuantityPoint</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(!QuantityPointOf&lt;QP, absolute_point_origin&gt;) &amp;&amp; requires(const QP&amp; src) {
      { src.point_for(point_origin) } -&gt; QuantityPointOf&lt;point_origin&gt;;
      quantity_type{src.point_for(point_origin) - point_origin};
    }</requires>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity_point</name>
  <anchor>2constructor-07c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>760</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2jrB5Me32apztpXx7VTq7tKrR2oy</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a quantity point from an external quantity-point-like type via </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_point_like_traits</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the source value, adapted through </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point_like_traits&lt;QP&gt;</literal>
              </text>
            </children>
          </code>
        </children>
        <name>qp</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>QP</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>qp</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>4VxaiASJtxfgvJLJcnqCwWWudqRp</id>
            <identifier>QuantityPointLike</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(quantity_point_like_traits&lt;QP&gt;::point_origin == point_origin) &amp;&amp;
            std::constructible_from&lt;quantity_type, quantity&lt;quantity_point_like_traits&lt;QP&gt;::reference,
                                                            typename quantity_point_like_traits&lt;QP&gt;::rep&gt;&gt;</requires>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity_point</name>
  <anchor>2constructor-00</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>719</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>AUVLRMeFM6mJFrmu4UXb4h2Mp5M</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Converting constructor from another quantity point that shares this one&apos;s absolute point origin.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the source quantity point to convert from</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>QP</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>qp</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
            <identifier>QuantityPointOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>absolute_point_origin</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>std::constructible_from&lt;quantity_type, typename QP::quantity_type&gt;</requires>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity_point</name>
  <anchor>2constructor-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>674</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3ZzpjVF6aPA8Tzfgi7y4CfaEVRRW</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Only available when </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is the default point origin for </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>R</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a quantity point from a quantity, measured from the default point origin.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity giving the offset from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
        </children>
        <name>q</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQ</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>FwdQ</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQ</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
            <identifier>QuantityOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>std::constructible_from&lt;quantity_type, FwdQ&gt; &amp;&amp; (point_origin == default_point_origin(R))</requires>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity_point</name>
  <anchor>2constructor-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>688</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>a1MZoyEivMA2fYNPUrJf6CRDmsw</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a quantity point from a quantity measured from this point&apos;s own origin.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity giving the offset from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the point origin the quantity is measured from, equal to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
        </children>
        <name>po</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQ</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <decltype>
          <kind>decltype</kind>
          <operand>PO</operand>
        </decltype>
      </type>
      <name>po</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>FwdQ</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQ</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
            <identifier>QuantityOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>std::constructible_from&lt;quantity_type, FwdQ&gt;</requires>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>quantity_point</name>
  <anchor>2constructor-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>703</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2s4inLVQcGEiBj9zuEGBiTq3UKuC</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a quantity point from a quantity measured from another point origin that shares this one&apos;s absolute point origin.</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity giving the offset from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>po</literal>
              </text>
            </children>
          </code>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the point origin the quantity is measured from</literal>
          </text>
        </children>
        <name>po</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQ</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>PO2</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>po</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>FwdQ</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>PO2</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>4NoR1GhJWMy7ThNgF4n9Se5DCrUJ</id>
            <identifier>PointOrigin</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQ</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>PointOriginFor&lt;PO2, Q::quantity_spec&gt; &amp;&amp; std::constructible_from&lt;quantity_type, FwdQ&gt; &amp;&amp;
             detail::SameAbsolutePointOriginAs&lt;PO2, PO&gt;</requires>
  </template>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<overloads>
  <name>force_in</name>
  <anchor>force_in-03</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1056</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>sZRoQp71dY83pHTjrNKnsFngKVu</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>force_in</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity point with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity point expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity point expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>to_u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>KF2RcZ4p6K6wYyfcmtCjfNF2sTm 2MuptWvxS7sW2DQeBX2W5eRWPxad 3h28LwZedRjRQMQzHV6k4tPxhBKZ</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
</overloads>
<function>
  <name>force_in</name>
  <anchor>force_in-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1072</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>KF2RcZ4p6K6wYyfcmtCjfNF2sTm</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated. Returns this quantity point re-expressed with another representation type, truncating if inexact.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity point with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use `in&lt;Rep&gt;(policy)` with a rounding policy (e.g. `truncated`) instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use `in&lt;Rep&gt;(policy)` with a rounding policy (e.g. `truncated`) instead</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>std::constructible_from&lt;ToRep, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>force_in</name>
  <anchor>force_in-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1056</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2MuptWvxS7sW2DQeBX2W5eRWPxad</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated. Returns this quantity point re-expressed in another unit, truncating if inexact.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity point expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>to_u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use `in(unit, policy)` with a rounding policy (e.g. `truncated`) instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use `in(unit, policy)` with a rounding policy (e.g. `truncated`) instead</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>ToU</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>to_u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToU</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>detail::ExplicitlyCastable&lt;unit, ToU{}, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>force_in</name>
  <anchor>force_in-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1089</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3h28LwZedRjRQMQzHV6k4tPxhBKZ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated. Returns this quantity point re-expressed in another unit and representation type, truncating if inexact.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity point expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>to_u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use `in&lt;Rep&gt;(unit, policy)` with a rounding policy (e.g. `truncated`) instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use `in&lt;Rep&gt;(unit, policy)` with a rounding policy (e.g. `truncated`) instead</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>ToU</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>to_u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>ToU</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>std::constructible_from&lt;ToRep, rep&gt; &amp;&amp; detail::ExplicitlyCastable&lt;unit, ToU{}, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>force_numerical_value_in</name>
  <anchor>force_numerical_value_in</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>943</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>o9SgX9HNmsqn9PJcgdPtP3TboJM</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated. Returns the numerical value of this quantity point on the scale of another unit, truncating if inexact.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The numerical value expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, measured from the default point origin.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use `numerical_value_in(unit, policy)` with a rounding policy (e.g. `truncated`) instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use `numerical_value_in(unit, policy)` with a rounding policy (e.g. `truncated`) instead</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
          <identifier>RepresentationOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>(PO == default_point_origin(R)) &amp;&amp; detail::ExplicitlyCastable&lt;unit, U{}, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<overloads>
  <name>in</name>
  <anchor>in-0acd</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>972</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>3QfcoAYzSFZJxwXasJkgNkqJqzSv</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>in</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity point with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity point expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity point expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>to_u</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the rounding policy to apply when the conversion is not exact</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>3NsB24ghBcoMMRL31m81CzFpB36F 4Lxf9xguFJibjnTRohwANY3fwkuN 46CHBiuwBGWG3XMkPynDYw4ve72G 3WtsVMdvEmVBen1uAMHSCB82Ac9A 3XHjYH7mUbTMLiSAbZzrKznmhP21 3PzEEznSkhUMqTbzg5Lv38nvVHbQ</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
</overloads>
<function>
  <name>in</name>
  <anchor>in-0aa</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>984</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3NsB24ghBcoMMRL31m81CzFpB36F</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns this quantity point re-expressed with another representation type, in the same unit.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity point with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>detail::RepConstructibleFrom&lt;ToRep, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>in</name>
  <anchor>in-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>972</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4Lxf9xguFJibjnTRohwANY3fwkuN</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns this quantity point re-expressed in another unit, implicitly convertible to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rep</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity point expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>to_u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>ToU</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>to_u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToU</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>detail::ImplicitScaling&lt;unit, ToU{}, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>in</name>
  <anchor>in-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1026</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>46CHBiuwBGWG3XMkPynDYw4ve72G</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns this quantity point re-expressed with another representation type, applying an explicit rounding policy.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity point with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the rounding policy to apply when the conversion is not exact</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>std::constructible_from&lt;ToRep, rep&gt; &amp;&amp; detail::ValidRoundingPolicyFor&lt;Policy, rep, ToRep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>in</name>
  <anchor>in-0b4</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>998</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3WtsVMdvEmVBen1uAMHSCB82Ac9A</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns this quantity point re-expressed in another unit and representation type, both implicitly convertible.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity point expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>to_u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>ToU</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>to_u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>ToU</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>detail::RepConstructibleFrom&lt;ToRep, rep&gt; &amp;&amp; detail::ImplicitConversion&lt;unit, rep, ToU{}, ToRep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>in</name>
  <anchor>in-0b5</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1012</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3XHjYH7mUbTMLiSAbZzrKznmhP21</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns this quantity point re-expressed in another unit, applying an explicit rounding policy.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity point expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>to_u</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the rounding policy to apply when the conversion is not exact</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>ToU</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>to_u</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToU</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>detail::ExplicitlyCastable&lt;unit, ToU{}, rep&gt; &amp;&amp; detail::ValidRoundingPolicyFor&lt;Policy, rep, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>in</name>
  <anchor>in-0ac0</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1041</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3PzEEznSkhUMqTbzg5Lv38nvVHbQ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns this quantity point re-expressed in another unit and representation type, applying an explicit rounding policy.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The equivalent quantity point expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> with representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>to_u</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the rounding policy to apply when the conversion is not exact</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>ToU</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>to_u</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>ToU</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>std::constructible_from&lt;ToRep, rep&gt; &amp;&amp; detail::ExplicitlyCastable&lt;unit, ToU{}, ToRep&gt; &amp;&amp;
             detail::ValidRoundingPolicyFor&lt;Policy, rep, ToRep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<overloads>
  <name>numerical_value_in</name>
  <anchor>numerical_value_in-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>909</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2vpTMF6XySEC5s7QeZuetssgXP7g</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>numerical_value_in</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The numerical value expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The numerical value expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, measured from the default point origin.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit, measured from the default point origin of that unit</literal>
          </text>
        </children>
        <name>u</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the rounding policy to apply when the conversion is not exact</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>25kBfUbNbhQhcZ6gYvgEhebv5ytu 4GAsQN1P7QhJLufMvo4u66H1BRLH</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
          <identifier>RepresentationOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
</overloads>
<function>
  <name>numerical_value_in</name>
  <anchor>numerical_value_in-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>909</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>25kBfUbNbhQhcZ6gYvgEhebv5ytu</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>This is the exact inverse of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point&lt;U&gt;(value)</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and is provided only for points that use </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>default_point_origin(R)</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> - the same condition under which text output and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_from_zero()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> are available. Points with a custom origin have no unique numerical representation, so their value must be requested from an explicit origin via </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_from(origin).numerical_value_in(U)</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the numerical value of this quantity point on the scale of another unit, implicitly convertible to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rep</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The numerical value expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit, measured from the default point origin of that unit</literal>
          </text>
        </children>
        <name>u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
          <identifier>RepresentationOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>(PO == default_point_origin(R)) &amp;&amp; detail::ImplicitScaling&lt;unit, U{}, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>numerical_value_in</name>
  <anchor>numerical_value_in-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>926</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4GAsQN1P7QhJLufMvo4u66H1BRLH</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Only available when </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is the default point origin for </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>R</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the numerical value of this quantity point on the scale of another unit, applying an explicit rounding policy.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The numerical value expressed in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, measured from the default point origin.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit</literal>
          </text>
        </children>
        <name>u</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the rounding policy to apply when the conversion is not exact</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
          <identifier>RepresentationOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(PO == default_point_origin(R)) &amp;&amp; detail::ExplicitlyCastable&lt;unit, U{}, rep&gt; &amp;&amp;
            detail::ValidRoundingPolicyFor&lt;Policy, rep, rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<overloads>
  <name>operator++</name>
  <anchor>operator_inc-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1153</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>45GXZwfJeC9tJy9RYC7FcSSnfYhR</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Increment operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the increment.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity point holding the value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> before the increment.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>An unused tag parameter that distinguishes this overload as the post-increment operator.</literal>
          </text>
        </children>
        <name>unused_tag</name>
      </param>
    </params>
  </doc>
  <funcClass>normal</funcClass>
  <overloadedOperator>++</overloadedOperator>
  <members>SDtLiSMbQAYsj3EGrVsLurxfpW2 32ra8zkJoDFBmo3HAcb6GZfZHrze</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator++</name>
  <anchor>operator_inc-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1153</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>SDtLiSMbQAYsj3EGrVsLurxfpW2</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Pre-increments the underlying quantity from the origin.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the increment.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
              <identifier>quantity_point</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>requires { ++quantity_from_origin_is_an_implementation_detail_; }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>++</overloadedOperator>
  <isRecordMethod/>
  <refQualifier>&amp;</refQualifier>
</function>
<function>
  <name>operator++</name>
  <anchor>operator_inc-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1169</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>32ra8zkJoDFBmo3HAcb6GZfZHrze</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Post-increments the underlying quantity from the origin.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity point holding the value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> before the increment.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>An unused tag parameter that distinguishes this overload as the post-increment operator.</literal>
          </text>
        </children>
        <name>unused_tag</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
          <identifier>quantity_point</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>int</identifier>
            </identifier>
          </name>
          <fundamentalType>int</fundamentalType>
        </named>
      </type>
      <name>unused_tag</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { quantity_from_origin_is_an_implementation_detail_++; }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>++</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator+=</name>
  <anchor>operator_plus_eq</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1217</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>37GGr3xVx1F9j3BfpokrQtfHpusU</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Adds a quantity to the underlying quantity from the origin and assigns the result to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>*this</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the addition.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The quantity to add.</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
              <identifier>quantity_point</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R2</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep2</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>(mp_units::implicitly_convertible(get_quantity_spec(R2), quantity_spec)) &amp;&amp;
            detail::ImplicitConversion&lt;get_unit(R2), Rep2, unit, rep&gt; &amp;&amp;
            requires(const quantity_type q) { quantity_from_origin_is_an_implementation_detail_ += q; }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>+=</overloadedOperator>
  <isRecordMethod/>
  <refQualifier>&amp;</refQualifier>
</function>
<overloads>
  <name>operator--</name>
  <anchor>operator_dec-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1184</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>4RVTGuxfWv94noTeuUwbEXP2tTRp</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Decrement operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the decrement.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity point holding the value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> before the decrement.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>An unused tag parameter that distinguishes this overload as the post-decrement operator.</literal>
          </text>
        </children>
        <name>unused_tag</name>
      </param>
    </params>
  </doc>
  <funcClass>normal</funcClass>
  <overloadedOperator>--</overloadedOperator>
  <members>3NbzAenFVSfdhBnEBGAz65EcDxnu bg5CoW5paoBz6bw5cJaE2mSi2Pa</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator--</name>
  <anchor>operator_dec-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1184</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3NbzAenFVSfdhBnEBGAz65EcDxnu</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Pre-decrements the underlying quantity from the origin.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the decrement.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
              <identifier>quantity_point</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>requires { --quantity_from_origin_is_an_implementation_detail_; }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>--</overloadedOperator>
  <isRecordMethod/>
  <refQualifier>&amp;</refQualifier>
</function>
<function>
  <name>operator--</name>
  <anchor>operator_dec-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1200</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>bg5CoW5paoBz6bw5cJaE2mSi2Pa</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Post-decrements the underlying quantity from the origin.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity point holding the value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> before the decrement.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>An unused tag parameter that distinguishes this overload as the post-decrement operator.</literal>
          </text>
        </children>
        <name>unused_tag</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
          <identifier>quantity_point</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>int</identifier>
            </identifier>
          </name>
          <fundamentalType>int</fundamentalType>
        </named>
      </type>
      <name>unused_tag</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { quantity_from_origin_is_an_implementation_detail_--; }</requires>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>--</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator-=</name>
  <anchor>operator_minus_eq</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1235</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>euwMHz83Su7rmGBJejUEBtsfodW</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Subtracts a quantity from the underlying quantity from the origin and assigns the result to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>*this</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, after the subtraction.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The quantity to subtract.</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
              <identifier>quantity_point</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R2</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep2</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>(mp_units::implicitly_convertible(get_quantity_spec(R2), quantity_spec)) &amp;&amp;
            detail::ImplicitConversion&lt;get_unit(R2), Rep2, unit, rep&gt; &amp;&amp;
            requires(const quantity_type q) { quantity_from_origin_is_an_implementation_detail_ -= q; }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>-=</overloadedOperator>
  <isRecordMethod/>
  <refQualifier>&amp;</refQualifier>
</function>
<overloads>
  <name>point_for</name>
  <anchor>point_for-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>782</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>4FWqBCLJhTM9NbPdHLGa4ptHeXpQ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>point_for</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>This quantity point measured from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>new_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the point origin to express this quantity point from</literal>
          </text>
        </children>
        <name>new_origin</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>extra arguments forwarded to the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>frame_projection</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> between the two absolute point origins</literal>
          </text>
        </children>
        <name>args</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>2gVKSXN4jj4qWESZ1d6d18iW9xtC 3e6C5jNybcBuAAxfzpadJaPrSM3D</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>(NewPO{})</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
</overloads>
<function>
  <name>point_for</name>
  <anchor>point_for-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>782</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2gVKSXN4jj4qWESZ1d6d18iW9xtC</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Re-expresses this quantity point relative to another point origin that shares the same absolute point origin.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>This quantity point measured from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>new_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the point origin to express this quantity point from</literal>
          </text>
        </children>
        <name>new_origin</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>(NewPO{})</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>NewPO</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>new_origin</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>NewPO</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2Uec3tvP3KHjfX21uQiWcqcVsiZX</id>
            <identifier>SameAbsolutePointOriginAs</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>absolute_point_origin</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>point_for</name>
  <anchor>point_for-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>799</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3e6C5jNybcBuAAxfzpadJaPrSM3D</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Re-expresses this quantity point relative to a point origin anchored to a different absolute point origin, via a user-defined </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>frame_projection</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>This quantity point measured from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>new_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the point origin to express this quantity point from</literal>
          </text>
        </children>
        <name>new_origin</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>extra arguments forwarded to the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>frame_projection</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> between the two absolute point origins</literal>
          </text>
        </children>
        <name>args</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>(NewPO{})</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>NewPO</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>new_origin</name>
    </param>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <isPackExpansion/>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Args</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>args</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>NewPO</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>4NoR1GhJWMy7ThNgF4n9Se5DCrUJ</id>
            <identifier>PointOrigin</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Args</name>
        <isParameterPack/>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>detail::HasFrameProjection&lt;absolute_point_origin, detail::get_absolute_point_origin(NewPO{})&gt; &amp;&amp;
             requires(quantity_point&lt;reference, absolute_point_origin, Rep&gt; at_src, Args... args) {
               {
                 frame_projection&lt;absolute_point_origin, detail::get_absolute_point_origin(NewPO{})&gt;(at_src, args...)
               } -&gt; QuantityPointOf&lt;detail::get_absolute_point_origin(NewPO{})&gt;;
             }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<overloads>
  <name>quantity_from</name>
  <anchor>quantity_from-00</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>864</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>5SQnG9VYCk7HbtJCMxzZHuACAgj</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_from</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The result of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this - po</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The result of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this - qp</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the point origin to measure the offset from</literal>
          </text>
        </children>
        <name>po</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point to measure the offset from</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>2yVapWsEfzrxTqq3kJHY1Y92MLH2 4WiLkEzmDJXjexQxUeNjQ4nLV2bB</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
</overloads>
<function>
  <name>quantity_from</name>
  <anchor>quantity_from-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>864</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2yVapWsEfzrxTqq3kJHY1Y92MLH2</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the quantity separating this quantity point from a given point origin.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The result of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this - po</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the point origin to measure the offset from</literal>
          </text>
        </children>
        <name>po</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>PO2</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>po</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>PO2</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>4NoR1GhJWMy7ThNgF4n9Se5DCrUJ</id>
            <identifier>PointOrigin</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>requires(const quantity_point qp) { qp - PO2{}; }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>quantity_from</name>
  <anchor>quantity_from-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>877</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4WiLkEzmDJXjexQxUeNjQ4nLV2bB</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the quantity separating this quantity point from another quantity point.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The result of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>*this - qp</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point to measure the offset from</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>QP</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>qp</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
            <identifier>QuantityPointOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>absolute_point_origin</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>quantity_from_zero</name>
  <anchor>quantity_from_zero</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>890</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3GttcM9ckxFFwMznafRG7EUNRBc9</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Only available when </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is the default point origin for </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>R</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the quantity separating this quantity point from the zero of its default point origin.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A reference to the stored offset quantity, measured from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <isConst/>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>24HAxnZXj6UYqKwJXqaLbr69pxqX</id>
              <identifier>quantity_type</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>(PO == default_point_origin(R))</requires>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<overloads>
  <name>quantity_ref_from</name>
  <anchor>quantity_ref_from-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>824</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2K7r9cZjYezxhW36xwRhgURWA6jE</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_ref_from</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A reference to the stored offset quantity.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A const reference to the stored offset quantity.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a point origin equal to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
        </children>
        <name>po</name>
      </param>
    </params>
  </doc>
  <funcClass>normal</funcClass>
  <members>2bpZvmB82qRbLQgqnjYxnc1ZGaeD 2xfktt2aHV7SXB9HEypPhRwCgFdi 3T8UkCAd7SfhAWaTxtoGpk4ceyUA</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>quantity_ref_from</name>
  <anchor>quantity_ref_from-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>824</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2bpZvmB82qRbLQgqnjYxnc1ZGaeD</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns a mutable reference to the underlying quantity, measured from </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>point_origin</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A reference to the stored offset quantity.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a point origin equal to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
        </children>
        <name>po</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>24HAxnZXj6UYqKwJXqaLbr69pxqX</id>
              <identifier>quantity_type</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>PO2</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>po</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>PO2</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>4NoR1GhJWMy7ThNgF4n9Se5DCrUJ</id>
            <identifier>PointOrigin</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(PO2{} == point_origin)</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <refQualifier>&amp;</refQualifier>
</function>
<function>
  <name>quantity_ref_from</name>
  <anchor>quantity_ref_from-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>837</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2xfktt2aHV7SXB9HEypPhRwCgFdi</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns a const reference to the underlying quantity, measured from </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>point_origin</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A const reference to the stored offset quantity.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a point origin equal to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
        </children>
        <name>po</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <isConst/>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>24HAxnZXj6UYqKwJXqaLbr69pxqX</id>
              <identifier>quantity_type</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>PO2</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>po</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>PO2</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>4NoR1GhJWMy7ThNgF4n9Se5DCrUJ</id>
            <identifier>PointOrigin</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(PO2{} == point_origin)</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
  <refQualifier>&amp;</refQualifier>
</function>
<function>
  <name>quantity_ref_from</name>
  <anchor>quantity_ref_from-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>849</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3T8UkCAd7SfhAWaTxtoGpk4ceyUA</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deleted overload that prevents forming a reference into a temporary quantity point.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> type used to store the offset of this quantity point from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a point origin equal to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
        </children>
        <name>po</name>
      </param>
    </params>
  </doc>
  <returnType>
    <rValueReference>
      <kind>rvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <isConst/>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>24HAxnZXj6UYqKwJXqaLbr69pxqX</id>
              <identifier>quantity_type</identifier>
            </identifier>
          </name>
        </named>
      </pointeeType>
    </rValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>PO2</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>po</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>PO2</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>4NoR1GhJWMy7ThNgF4n9Se5DCrUJ</id>
            <identifier>PointOrigin</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(PO2{} == point_origin)</requires>
  </template>
  <funcClass>normal</funcClass>
  <isDeleted/>
  <isDeletedAsWritten/>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
  <refQualifier>&amp;&amp;</refQualifier>
</function>
<overloads>
  <name>operator QP_</name>
  <anchor>2conversion-00</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1105</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>Bv2F7Af9VB7afwQhTRRLSfEApRW</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Conversion operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The value produced by </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point_like_traits&lt;QP&gt;::from_numerical_value</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>conversion</funcClass>
  <members>2qUAJrEH93VAD9mdNU1GdckAg9k3 3GGioojcPjAVmT7syQGVrxenTjDu</members>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>QP_</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
</overloads>
<function>
  <name>operator QP_</name>
  <anchor>2conversion-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1105</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2qUAJrEH93VAD9mdNU1GdckAg9k3</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Converts this lvalue quantity point to an external quantity-point-like type via </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_point_like_traits</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The value produced by </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point_like_traits&lt;QP&gt;::from_numerical_value</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>QP_</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>QP_</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>QP_</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>4VxaiASJtxfgvJLJcnqCwWWudqRp</id>
            <identifier>QuantityPointLike</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(point_origin == quantity_point_like_traits&lt;QP&gt;::point_origin) &amp;&amp;
            std::convertible_to&lt;quantity_type, quantity&lt;quantity_point_like_traits&lt;QP&gt;::reference,
                                                        typename quantity_point_like_traits&lt;QP&gt;::rep&gt;&gt;</requires>
  </template>
  <funcClass>conversion</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
  <refQualifier>&amp;</refQualifier>
</function>
<function>
  <name>operator QP_</name>
  <anchor>2conversion-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>1129</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3GGioojcPjAVmT7syQGVrxenTjDu</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Converts this rvalue quantity point to an external quantity-point-like type via </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_point_like_traits</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The value produced by </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point_like_traits&lt;QP&gt;::from_numerical_value</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>QP_</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>QP_</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>QP_</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>4VxaiASJtxfgvJLJcnqCwWWudqRp</id>
            <identifier>QuantityPointLike</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(point_origin == quantity_point_like_traits&lt;QP&gt;::point_origin) &amp;&amp;
            std::convertible_to&lt;quantity_type, quantity&lt;quantity_point_like_traits&lt;QP&gt;::reference,
                                                        typename quantity_point_like_traits&lt;QP&gt;::rep&gt;&gt;</requires>
  </template>
  <funcClass>conversion</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <refQualifier>&amp;&amp;</refQualifier>
</function>
<function>
  <name>max</name>
  <anchor>max</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>641</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4KvKvtxy9SmdmTwcis3X1EVPtB4s</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the largest representable quantity point, honoring the point origin&apos;s bounds policy.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity point at </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, holding the origin&apos;s declared upper bound if </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> provides one, or </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_type::max()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
          <identifier>quantity_point</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>requires { PO._bounds_.max; } || requires { quantity_type::max(); }</requires>
  <constexpr>constexpr</constexpr>
  <storageClass>static</storageClass>
  <isRecordMethod/>
</function>
<function>
  <name>min</name>
  <anchor>min</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>620</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2bn6EPYcDSGFp1paoQm2LSa8VwGe</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the smallest representable quantity point, honoring the point origin&apos;s bounds policy.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity point at </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, holding the origin&apos;s declared lower bound if </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> provides one, or </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_type::min()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
          <identifier>quantity_point</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>requires { PO._bounds_.min; } || requires { quantity_type::min(); }</requires>
  <constexpr>constexpr</constexpr>
  <storageClass>static</storageClass>
  <isRecordMethod/>
</function>
<function>
  <name>zero</name>
  <anchor>zero</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>657</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>ZYWu49U7ooyDMQCLxYzLiUZwV2s</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Only available when </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is the default point origin for </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>R</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns a quantity point at </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>point_origin</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, holding the representation type&apos;s zero value.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity point equal to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_type::zero()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> measured from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>point_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
          <identifier>quantity_point</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>(PO == default_point_origin(R)) &amp;&amp; requires { quantity_type::zero(); }</requires>
  <constexpr>constexpr</constexpr>
  <storageClass>static</storageClass>
  <isRecordMethod/>
</function>
<variable>
  <name>quantity_from_origin_is_an_implementation_detail_</name>
  <anchor>quantity_from_origin_is_an_implementation_detail_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
        <lineNumber>611</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>2FXxZKPHdvxjJ6W9dw2g9eouKoBn</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>needs to be public for a structural type</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>24HAxnZXj6UYqKwJXqaLbr69pxqX</id>
          <identifier>quantity_type</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<variable>
  <name>absolute_point_origin</name>
  <anchor>absolute_point_origin</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>603</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4BG1LiyxvfrnQZ6rpVmY2k7inPhR</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The absolute point origin underlying </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>point_origin</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> - </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>point_origin</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> itself if it already is one, otherwise the absolute origin reached by following its chain of relative point origins.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>4NoR1GhJWMy7ThNgF4n9Se5DCrUJ</id>
          <identifier>PointOrigin</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>detail::get_absolute_point_origin(PO)</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>character</name>
  <anchor>character</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>598</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3XzGwXnWEzXBjn2wX9FMb6y3s1rQ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The quantity character (tensor order and numeric field) extracted from </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_spec</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2Hv491FBzUHufEgtmwfLXcRMayVd</id>
          <identifier>quantity_character</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>get_character(quantity_spec)</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>dimension</name>
  <anchor>dimension</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>596</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>kEkmUJdTmiGph4hwNVWt1vKgAxE</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The dimension extracted from </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_spec</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>get_dimension(quantity_spec)</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>point_origin</name>
  <anchor>point_origin</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>605</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>ZfWwdajYgu6g7qvDom7cLLb1NZo</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The point origin of this quantity point, as provided via the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>PO</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> template parameter.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>4NoR1GhJWMy7ThNgF4n9Se5DCrUJ</id>
          <identifier>PointOrigin</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>PO</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>quantity_spec</name>
  <anchor>quantity_spec</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>594</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>8kVGbe51ZS3ZWCxzaQVfhugMcmb</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The quantity specification extracted from </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>reference</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
          <identifier>QuantitySpec</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>get_quantity_spec(reference)</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>reference</name>
  <anchor>reference</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>592</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3hpRFAbYw97dHUTDCo5a9wc3VMtp</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The reference of the quantity point, as provided via the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>R</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> template parameter.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
          <identifier>Reference</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>R</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>unit</name>
  <anchor>unit</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>600</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>hTvTorLLqfUhZKB8K8uY3tCCLYt</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2yjx1vnc5z9QvHyxt3APwaSpNiv8</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The unit extracted from </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>reference</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
          <identifier>Unit</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>get_unit(reference)</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>quantity_point_like_traits</name>
  <anchor>quantity_point_like_traits</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>700</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>3tAPX4gKmpLdoKTPusVMGYWHiEK4</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The type trait should provide nested </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>reference</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> objects, a type alias </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rep,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and static member functions </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to_numerical_value(T)</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> that returns the raw value of the the quantity being the offset of the point from the origin and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>from_numerical_value(rep)</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> that returns </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> formed this raw value.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>If the following expression is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> the specified conversion will be explicit:</literal>
          </text>
        </children>
      </paragraph>
      <list>
        <kind>list</kind>
        <items>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>explicit_import</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> for the conversion from </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>T</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> to a </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>quantity_point</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> type,</literal>
                  </text>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>explicit_export</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> for the conversion from a </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>quantity_point</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> type to </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>T.</literal>
                      </text>
                    </children>
                  </code>
                </children>
              </paragraph>
            </blocks>
          </listItem>
        </items>
        <listKind>unordered</listKind>
      </list>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Usage example can be found in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>mp-units/systems/si/chrono.h</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> header file.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Provides support for external quantity point-like types</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the type to provide support for</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
</record>
<record>
  <name>quantity_spec</name>
  <anchor>quantity_spec-09</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_concepts.h</sourcePath>
        <lineNumber>40</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>58</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>376</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>34sGDDhSXkFmzrFyrPzchL5XwvaZ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A specification of a quantity used to define its kind, dimension, and character</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <isParameterPack/>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <derived>4QbdSnSogncVTvJJWScyAvQBwvux</derived>
  <specializations>3KixrkcHQJsgacRbKW4sykEs3AEe 3EhxB36QiQjQ48qhgQyD2GFTKQw5</specializations>
</record>
<record>
  <name>quantity_spec</name>
  <anchor>quantity_spec-0a6</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>420</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3KixrkcHQJsgacRbKW4sykEs3AEe</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specialization defining a base quantity</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Dim</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>DSkiHnPATDWrqhgauLAbc95QEJ1</id>
                <identifier>NamedQuantitySpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>Args</name>
        <isParameterPack/>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>3aGbzfM9Wk3yozWBiEva8yEaHdeH</id>
                <identifier>QSProperty</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
    <args>
      <constant>
        <kind>constant</kind>
        <value>QS</value>
      </constant>
      <constant>
        <kind>constant</kind>
        <isPackExpansion/>
        <value>Args</value>
      </constant>
    </args>
    <primary>34sGDDhSXkFmzrFyrPzchL5XwvaZ</primary>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3saBgG69eSBEhVisex6iF7AMzigU</id>
              <identifier>quantity_spec_interface</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
          <lineNumber>420</lineNumber>
          <columnNumber>38</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>38wfLsBFnJrmNBrfvJNhGG8k5Ypi</typedefs>
      <functions>3MjmjR4cRzKGgUj2gLai74upjLQh 4UCEkveKexeNSsvdTPQo4dk1FLA5</functions>
      <staticVariables>3iatuf5jckfSg1xW9fWKbHdFr4Aj 4MPpHdPRCpMnYpB3RPRixR77sw63 2yxvLAsv1mB68TAB7BCSdp1MK78W 2Phf1fbMxmhtTcsr3jPKfNueQwiT 13WzmRsjQV1PvtQYguNM57fJB4j 2n3YpdZFwsxZ6xmBcdSBXKJNfSkX 35Y7SCbZ5df7nsbyt2PiQJrr6ALn</staticVariables>
    </public>
  </interface>
  <isListedOnPrimary/>
</record>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>427</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>482</lineNumber>
        <columnNumber>3</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>547</lineNumber>
        <columnNumber>3</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>38wfLsBFnJrmNBrfvJNhGG8k5Ypi</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3KixrkcHQJsgacRbKW4sykEs3AEe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The base type used to detect specializations of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_spec</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>3KixrkcHQJsgacRbKW4sykEs3AEe</id>
          <identifier>quantity_spec</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<overloads>
  <name>operator()</name>
  <anchor>operator_call-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>420</lineNumber>
      <columnNumber>38</columnNumber>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>3MjmjR4cRzKGgUj2gLai74upjLQh</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3KixrkcHQJsgacRbKW4sykEs3AEe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Function call operators</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>()</overloadedOperator>
  <members>TwrkLrFgGqqC9Z962X14Cd5JDCh 4QWUYyEavHBqUrVZDC8aKT6LZYtc 34ZApNPiTnz6fboLwvmREjSrbvrt</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator()</name>
  <anchor>operator_call-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>420</lineNumber>
      <columnNumber>38</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>TwrkLrFgGqqC9Z962X14Cd5JDCh</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>3KixrkcHQJsgacRbKW4sykEs3AEe</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Self</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQ</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Self</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>FwdQ</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQ</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(mp_units::explicitly_convertible(Q::quantity_spec, Self{})) &amp;&amp;
            requires { typename quantity&lt;make_reference(Self{}, Q::unit), typename Q::rep&gt;; }</requires>
  </template>
  <funcClass>normal</funcClass>
  <isExplicitObjectMemberFunction/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator()</name>
  <anchor>operator_call-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>420</lineNumber>
      <columnNumber>38</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4QWUYyEavHBqUrVZDC8aKT6LZYtc</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>3KixrkcHQJsgacRbKW4sykEs3AEe</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Self</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdValue</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>val</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Self</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>FwdValue</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Value</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdValue</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>Self{}</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>(detail::explicitly_convertible_to_dimensionless(Self{}))</requires>
  </template>
  <funcClass>normal</funcClass>
  <isExplicitObjectMemberFunction/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator()</name>
  <anchor>operator_call-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>420</lineNumber>
      <columnNumber>38</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>34ZApNPiTnz6fboLwvmREjSrbvrt</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>3KixrkcHQJsgacRbKW4sykEs3AEe</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
          <identifier>QuantityPoint</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Self</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>self</name>
    </param>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQP</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>qp</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Self</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>FwdQP</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQP</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
            <identifier>QuantityPoint</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(mp_units::explicitly_convertible(QP::quantity_spec, Self{})) &amp;&amp;
            requires { typename quantity_point&lt;make_reference(Self{}, QP::unit), QP::point_origin, typename QP::rep&gt;; }</requires>
  </template>
  <funcClass>normal</funcClass>
  <isExplicitObjectMemberFunction/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator[]</name>
  <anchor>operator_subs</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>420</lineNumber>
      <columnNumber>38</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4UCEkveKexeNSsvdTPQo4dk1FLA5</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>3KixrkcHQJsgacRbKW4sykEs3AEe</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
          <identifier>Reference</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Self</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Self</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>Self{}</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <isExplicitObjectMemberFunction/>
  <constexpr>consteval</constexpr>
  <overloadedOperator>[]</overloadedOperator>
  <isRecordMethod/>
</function>
<variable>
  <name>_character_</name>
  <anchor>_character_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>431</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3iatuf5jckfSg1xW9fWKbHdFr4Aj</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3KixrkcHQJsgacRbKW4sykEs3AEe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The character of the quantity, real scalar unless overriden in </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Args</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2Hv491FBzUHufEgtmwfLXcRMayVd</id>
          <identifier>quantity_character</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>detail::quantity_character_init&lt;Args...&gt;(get_character(QS))</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_dimension_</name>
  <anchor>_dimension_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>429</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4MPpHdPRCpMnYpB3RPRixR77sw63</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3KixrkcHQJsgacRbKW4sykEs3AEe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The base dimension this quantity specification was defined from</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>get_dimension(_parent_)</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_equation_</name>
  <anchor>_equation_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>484</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2yxvLAsv1mB68TAB7BCSdp1MK78W</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3KixrkcHQJsgacRbKW4sykEs3AEe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The quantity equation this specification was derived from</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>Eq</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_is_non_negative_</name>
  <anchor>_is_non_negative_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>438</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2Phf1fbMxmhtTcsr3jPKfNueQwiT</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3KixrkcHQJsgacRbKW4sykEs3AEe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Whether quantities of this specification can never hold a negative value</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <initializer>mp_units::contains&lt;struct non_negative, Args...&gt;() || (!mp_units::contains&lt;struct possibly_negative, Args...&gt;() &amp;&amp;
                                                           _character_ == quantity_character{} &amp;&amp; QS._is_non_negative_)</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_parent_</name>
  <anchor>_parent_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>549</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>13WzmRsjQV1PvtQYguNM57fJB4j</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3KixrkcHQJsgacRbKW4sykEs3AEe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The parent quantity specification this leaf was derived from</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>QS</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>character</name>
  <anchor>character</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>444</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2n3YpdZFwsxZ6xmBcdSBXKJNfSkX</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3KixrkcHQJsgacRbKW4sykEs3AEe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated accessor for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <emph>
              <kind>emph</kind>
              <children>
                <text>
                  <kind>text</kind>
                  <literal>character</literal>
                </text>
              </children>
            </emph>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>; use </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>get_character(qs)</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> instead</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use `get_character(qs)` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use `get_character(qs)` instead</message>
    </deprecated>
  </attributes>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2Hv491FBzUHufEgtmwfLXcRMayVd</id>
          <identifier>quantity_character</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>_character_</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>dimension</name>
  <anchor>dimension</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>441</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>35Y7SCbZ5df7nsbyt2PiQJrr6ALn</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3KixrkcHQJsgacRbKW4sykEs3AEe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated accessor for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <emph>
              <kind>emph</kind>
              <children>
                <text>
                  <kind>text</kind>
                  <literal>dimension</literal>
                </text>
              </children>
            </emph>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>; use </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>get_dimension(qs)</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> instead</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use `get_dimension(qs)` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use `get_dimension(qs)` instead</message>
    </deprecated>
  </attributes>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>_dimension_</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>quantity_spec</name>
  <anchor>quantity_spec-0a0</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>577</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3EhxB36QiQjQ48qhgQyD2GFTKQw5</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specialization defining a leaf derived quantity in the hierarchy with a refined equation</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>DSkiHnPATDWrqhgauLAbc95QEJ1</id>
                <identifier>NamedQuantitySpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>Eq</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2x53BpYEa1zr2a32YEefTAApSN7W</id>
                <identifier>DerivedQuantitySpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>Args</name>
        <isParameterPack/>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>3aGbzfM9Wk3yozWBiEva8yEaHdeH</id>
                <identifier>QSProperty</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
    <args>
      <constant>
        <kind>constant</kind>
        <value>QS</value>
      </constant>
      <constant>
        <kind>constant</kind>
        <value>Eq</value>
      </constant>
      <constant>
        <kind>constant</kind>
        <isPackExpansion/>
        <value>Args</value>
      </constant>
    </args>
    <requires>(mp_units::explicitly_convertible(Eq, QS))</requires>
    <primary>34sGDDhSXkFmzrFyrPzchL5XwvaZ</primary>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3saBgG69eSBEhVisex6iF7AMzigU</id>
              <identifier>quantity_spec_interface</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
          <lineNumber>577</lineNumber>
          <columnNumber>41</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>4W1YXEWghqB9pbcC79e3Kn8eyXU1</typedefs>
      <functions>HJPXxU4T3Y2YuLSCzWTCkczj84u 4Gser9LCcoJSYmmJvWndCcXfmq5U</functions>
      <staticVariables>2PLXdnkuhm3BUv8ifPzBb8Pzeu8U 2Ecjn6rcFJvWehJrBVqqz4XVn3Dv bf2U6K9Mwvr4TMaG6VtWKELfCiZ Q1AzcE4u4njqZ32RGtJdjsXvwnF 4CWo4DzZvBH4yQrfV7iAwncUnhPX 2VLYMJEq6AP3zzdvbeTveGiqQPAX 4MRMxEwURSscXQET7gTD8dqiyDm1</staticVariables>
    </public>
  </interface>
  <isListedOnPrimary/>
</record>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>586</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>4W1YXEWghqB9pbcC79e3Kn8eyXU1</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3EhxB36QiQjQ48qhgQyD2GFTKQw5</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The base type used to detect specializations of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_spec</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>3EhxB36QiQjQ48qhgQyD2GFTKQw5</id>
          <identifier>quantity_spec</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<overloads>
  <name>operator()</name>
  <anchor>operator_call-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>577</lineNumber>
      <columnNumber>41</columnNumber>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>HJPXxU4T3Y2YuLSCzWTCkczj84u</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3EhxB36QiQjQ48qhgQyD2GFTKQw5</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Function call operators</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>()</overloadedOperator>
  <members>9DaoB4LnP8pVXcaMuAvbfxDHmD8 2cBDDAgZgHBHFHb4yGytTmp3QnU6 4QqWrEacU9191rnd1VhpKBBjQAJk</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator()</name>
  <anchor>operator_call-00</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>577</lineNumber>
      <columnNumber>41</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>9DaoB4LnP8pVXcaMuAvbfxDHmD8</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>3EhxB36QiQjQ48qhgQyD2GFTKQw5</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Self</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQ</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Self</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>FwdQ</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQ</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(mp_units::explicitly_convertible(Q::quantity_spec, Self{})) &amp;&amp;
            requires { typename quantity&lt;make_reference(Self{}, Q::unit), typename Q::rep&gt;; }</requires>
  </template>
  <funcClass>normal</funcClass>
  <isExplicitObjectMemberFunction/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator()</name>
  <anchor>operator_call-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>577</lineNumber>
      <columnNumber>41</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2cBDDAgZgHBHFHb4yGytTmp3QnU6</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>3EhxB36QiQjQ48qhgQyD2GFTKQw5</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Self</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdValue</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>val</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Self</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>FwdValue</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Value</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdValue</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>Self{}</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>(detail::explicitly_convertible_to_dimensionless(Self{}))</requires>
  </template>
  <funcClass>normal</funcClass>
  <isExplicitObjectMemberFunction/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator()</name>
  <anchor>operator_call-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>577</lineNumber>
      <columnNumber>41</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4QqWrEacU9191rnd1VhpKBBjQAJk</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>3EhxB36QiQjQ48qhgQyD2GFTKQw5</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
          <identifier>QuantityPoint</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Self</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>self</name>
    </param>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQP</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>qp</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Self</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>FwdQP</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQP</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
            <identifier>QuantityPoint</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(mp_units::explicitly_convertible(QP::quantity_spec, Self{})) &amp;&amp;
            requires { typename quantity_point&lt;make_reference(Self{}, QP::unit), QP::point_origin, typename QP::rep&gt;; }</requires>
  </template>
  <funcClass>normal</funcClass>
  <isExplicitObjectMemberFunction/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
</function>
<function>
  <name>operator[]</name>
  <anchor>operator_subs</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>577</lineNumber>
      <columnNumber>41</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4Gser9LCcoJSYmmJvWndCcXfmq5U</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>3EhxB36QiQjQ48qhgQyD2GFTKQw5</parent>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
          <identifier>Reference</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Self</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Self</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
            <identifier>UnitOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>Self{}</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <isExplicitObjectMemberFunction/>
  <constexpr>consteval</constexpr>
  <overloadedOperator>[]</overloadedOperator>
  <isRecordMethod/>
</function>
<variable>
  <name>_character_</name>
  <anchor>_character_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>595</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2PLXdnkuhm3BUv8ifPzBb8Pzeu8U</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3EhxB36QiQjQ48qhgQyD2GFTKQw5</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The character of the quantity, derived from the equation unless overriden in </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Args</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2Hv491FBzUHufEgtmwfLXcRMayVd</id>
          <identifier>quantity_character</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>detail::quantity_character_init&lt;Args...&gt;(get_character(Eq))</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_dimension_</name>
  <anchor>_dimension_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>592</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2Ecjn6rcFJvWehJrBVqqz4XVn3Dv</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3EhxB36QiQjQ48qhgQyD2GFTKQw5</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The dimension inherited from the parent quantity specification</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>get_dimension(_parent_)</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_equation_</name>
  <anchor>_equation_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>590</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>bf2U6K9Mwvr4TMaG6VtWKELfCiZ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3EhxB36QiQjQ48qhgQyD2GFTKQw5</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The derived quantity equation this specification refines</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>Eq</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_is_non_negative_</name>
  <anchor>_is_non_negative_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>602</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>Q1AzcE4u4njqZ32RGtJdjsXvwnF</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3EhxB36QiQjQ48qhgQyD2GFTKQw5</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Whether quantities of this specification can never hold a negative value</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <initializer>mp_units::contains&lt;struct non_negative, Args...&gt;() || (!mp_units::contains&lt;struct possibly_negative, Args...&gt;() &amp;&amp;
                                                           _character_ == quantity_character{} &amp;&amp; QS._is_non_negative_)</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_parent_</name>
  <anchor>_parent_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>588</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4CWo4DzZvBH4yQrfV7iAwncUnhPX</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3EhxB36QiQjQ48qhgQyD2GFTKQw5</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The parent quantity specification this leaf was derived from</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>QS</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>character</name>
  <anchor>character</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>609</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2VLYMJEq6AP3zzdvbeTveGiqQPAX</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3EhxB36QiQjQ48qhgQyD2GFTKQw5</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated accessor for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <emph>
              <kind>emph</kind>
              <children>
                <text>
                  <kind>text</kind>
                  <literal>character</literal>
                </text>
              </children>
            </emph>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>; use </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>get_character(qs)</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> instead</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use `get_character(qs)` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use `get_character(qs)` instead</message>
    </deprecated>
  </attributes>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2Hv491FBzUHufEgtmwfLXcRMayVd</id>
          <identifier>quantity_character</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>_character_</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>dimension</name>
  <anchor>dimension</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>607</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4MRMxEwURSscXQET7gTD8dqiyDm1</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3EhxB36QiQjQ48qhgQyD2GFTKQw5</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated accessor for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <emph>
              <kind>emph</kind>
              <children>
                <text>
                  <kind>text</kind>
                  <literal>dimension</literal>
                </text>
              </children>
            </emph>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>; use </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>get_dimension(qs)</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> instead</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use `get_dimension(qs)` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use `get_dimension(qs)` instead</message>
    </deprecated>
  </attributes>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
          <identifier>Dimension</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>_dimension_</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>reference</name>
  <anchor>reference-0b2</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>71</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/reference_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/reference_concepts.h</sourcePath>
        <lineNumber>33</lineNumber>
        <columnNumber>17</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity reference describes all the properties of a quantity besides its representation type.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>In most cases this class template is not explicitly instantiated by the user. It is implicitly instantiated by the library&apos;s framework while binding a quantity specification with a compatible unit.</literal>
          </text>
        </children>
      </paragraph>
      <code>
        <kind>code</kind>
        <literal>Reference auto kmph = isq::speed[km / h];
QuantityOf&lt;isq::speed[km / h]&gt; auto speed = 90 * kmph;</literal>
        <info>cpp</info>
      </code>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The following syntaxes are not allowed: </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>2 / kmph</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>kmph * 3</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>kmph / 4</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>70 * isq::length[km]/ isq:time[h]</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Quantity reference type</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
            <identifier>QuantitySpec</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <friends>
    <friendInfo>
      <id>4Kk7daZVJfRtgL3J6mEgFu8HneWn</id>
    </friendInfo>
    <friendInfo>
      <id>4X6Ge7z9QBdknt3JAmNun1SZ4jeX</id>
    </friendInfo>
    <friendInfo>
      <id>zLF33qshLAj8zKRhGccYSxbKnN6</id>
    </friendInfo>
    <friendInfo>
      <id>3dvVC2HZ2jt5yFjXC7nAS7JwQHeE</id>
    </friendInfo>
    <friendInfo>
      <id>3zNCjWPfcALw4Pq7Tq9Gj6DmAYoJ</id>
    </friendInfo>
    <friendInfo>
      <id>4Dq2WontgA2XUfiNWnuyrnb97wrg</id>
    </friendInfo>
    <friendInfo>
      <id>3wVtfmm19mJta2odSfM8WusspTuQ</id>
    </friendInfo>
    <friendInfo>
      <id>cTiaqqdEGCNTBbco8JCkByMWuez</id>
    </friendInfo>
    <friendInfo>
      <id>4SbkNSE1uMYUqxiV3RZFhLwLTSyK</id>
    </friendInfo>
    <friendInfo>
      <id>298nwg2AAerWNrDzqyMQH8qmgajE</id>
    </friendInfo>
    <friendInfo>
      <id>fbPbreiwgTvf8AcVNc1KtxMXMDJ</id>
    </friendInfo>
    <friendInfo>
      <id>2aRNLY2Weo3oCYppaqAPSQhphCZm</id>
    </friendInfo>
    <friendInfo>
      <id>FrEgdz3tkofK6b8xMWwmb8GdqqS</id>
    </friendInfo>
    <friendInfo>
      <id>4XtqHtFy8UxSaoVMtqksXfwAmAE</id>
    </friendInfo>
    <friendInfo>
      <id>4N5wENfyQV3Q4J7qAwqv9fCbwjCn</id>
    </friendInfo>
  </friends>
</record>
<record>
  <name>reflect_in_range</name>
  <anchor>reflect_in_range</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>191</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3Zha3W3yCHH3RyExYEysLsT6WVhe</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Values that exceed [min, max]are &quot;bounced back&quot; from the boundary. For example, with </literal>
          </text>
          <link>
            <kind>link</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>-90, 90</literal>
              </text>
            </children>
            <href>latitude</href>
          </link>
          <text>
            <kind>text</kind>
            <literal>: 91 -&gt; 89, 180 -&gt; 0, 270 -&gt; -90.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Policy that reflects (folds) the value at both boundaries.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <interface>
    <public>
      <functions>pExKMpjyvUExEgCagXcX88Tyb53</functions>
      <variables>2apPXaNhUKNd8XYTA5uxKdZWNMx8 3F3A7EXWcniuTkGQf895zztBt9MQ</variables>
    </public>
  </interface>
</record>
<function>
  <name>operator()</name>
  <anchor>operator_call</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>201</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>pExKMpjyvUExEgCagXcX88Tyb53</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3Zha3W3yCHH3RyExYEysLsT6WVhe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Reflects </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>v</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> into the closed range [</literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>min</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>max</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>].</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>v</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> folded back into [</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>min</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>max</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>]by bouncing off the boundaries</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to reflect</literal>
          </text>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>V</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>V</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>v</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>V</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
  <isConst/>
</function>
<variable>
  <name>max</name>
  <anchor>max</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/overflow_policies.h</shortPath>
        <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
        <lineNumber>194</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>2apPXaNhUKNd8XYTA5uxKdZWNMx8</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3Zha3W3yCHH3RyExYEysLsT6WVhe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The upper boundary of the reflection range</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Q</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<variable>
  <name>min</name>
  <anchor>min</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/overflow_policies.h</shortPath>
        <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
        <lineNumber>193</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>3F3A7EXWcniuTkGQf895zztBt9MQ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3Zha3W3yCHH3RyExYEysLsT6WVhe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The lower boundary of the reflection range</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Q</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<record>
  <name>relative_point_origin</name>
  <anchor>relative_point_origin</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>209</lineNumber>
      <columnNumber>17</columnNumber>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point_concepts.h</sourcePath>
        <lineNumber>96</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>2MBctGnrEPVkePZq8UUyHyAZBFv6</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Its absolute origin is the absolute origin of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>QP</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, and it is displaced from that absolute origin by the value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>QP</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> itself, which allows users to define new origins in terms of previously defined quantity points.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A point origin defined relative to another quantity point</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point this origin is defined relative to</literal>
          </text>
        </children>
        <name>QP</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>optional policy arguments (e.g. a bounds policy)</literal>
          </text>
        </children>
        <name>Args</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>QP</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
                <identifier>QuantityPoint</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>Args</name>
        <isParameterPack/>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>KK9YaxHBuJyB7F2cmbzypn8JYd8</id>
              <identifier>point_origin_interface</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/quantity_point.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
          <lineNumber>210</lineNumber>
          <columnNumber>32</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <staticVariables>3be95RUjXBm8LxQGi7jW6NHQLpQ3 3vwjcbVUtw4AMVSbihD98pUVVmtx RqadttUQkTu7V9SLCR18NKJpZMz 2XkrqiMDxwrioQkvmpubZ5JzMqKt</staticVariables>
    </public>
  </interface>
</record>
<variable>
  <name>_absolute_point_origin_</name>
  <anchor>_absolute_point_origin_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>223</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3be95RUjXBm8LxQGi7jW6NHQLpQ3</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2MBctGnrEPVkePZq8UUyHyAZBFv6</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The absolute point origin that </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>QP</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, and thus this origin, is ultimately measured from</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>4NoR1GhJWMy7ThNgF4n9Se5DCrUJ</id>
          <identifier>PointOrigin</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>QP.absolute_point_origin</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_bounds_</name>
  <anchor>_bounds_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>225</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3vwjcbVUtw4AMVSbihD98pUVVmtx</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2MBctGnrEPVkePZq8UUyHyAZBFv6</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The bounds policy applied to points measured from this origin, if any was provided in </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Args</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>detail::bounds_arg&lt;Args...&gt;()</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_quantity_point_</name>
  <anchor>_quantity_point_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>213</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>RqadttUQkTu7V9SLCR18NKJpZMz</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2MBctGnrEPVkePZq8UUyHyAZBFv6</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The quantity point this origin is defined relative to</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
          <identifier>QuantityPoint</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>QP</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_quantity_spec_</name>
  <anchor>_quantity_spec_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>215</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2XkrqiMDxwrioQkvmpubZ5JzMqKt</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2MBctGnrEPVkePZq8UUyHyAZBFv6</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The quantity specification of this origin, being the strongest of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>QP</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>&apos;s specs</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
          <identifier>QuantitySpec</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>[]() {
    // select the strongest of specs
    if constexpr (detail::QuantityKindSpec&lt;MP_UNITS_NONCONST_TYPE(QP.quantity_spec)&gt;)
      return get_quantity_spec(QP.point_origin);
    else
      return QP.quantity_spec;
  }()</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>relative_standard_uncertainty</name>
  <anchor>relative_standard_uncertainty</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>489</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>KvQe7W4psngLdA1A2RmypBVkB34</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Wraps the relative standard uncertainty (GUM/CODATA </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u_r</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>) of a measured constant as an exact symbolic magnitude so that no representation type is imposed at the definition point. It is metadata only - it never participates in unit equality, conversion factors, or symbolic simplification.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A measured constant declares exactly one of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>relative_standard_uncertainty</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>standard_uncertainty</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> - whichever form its source publishes. The published pair is mutually rounded, so carrying both would embed a contradiction. This form is invariant under a change of unit, so it is the right choice for a constant whose defining unit has no published absolute uncertainty.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>For example:</literal>
          </text>
        </children>
      </paragraph>
      <code>
        <kind>code</kind>
        <literal>inline constexpr struct newtonian_constant_of_gravitation final :
    named_constant&lt;&quot;G&quot;, mag_ratio&lt;667&apos;430, 100&apos;000&gt; * mag_power&lt;10, -11&gt; * m3 / kg / s2,
                   relative_standard_uncertainty{mag_ratio&lt;22, 10&gt; * mag_power&lt;10, -5&gt;}&gt; {}
newtonian_constant_of_gravitation;</literal>
        <info>cpp</info>
      </code>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Relative standard uncertainty of a measured constant</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an exact magnitude representing the relative standard uncertainty</literal>
          </text>
        </children>
        <name>M</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>M</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>xKAh8ftVFPPg9yHq2Nj39wmoCFd</id>
            <identifier>UnitMagnitude</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <interface>
    <public>
      <variables>JQjk2BKBxrFCuZwTvWN3mgew9hF</variables>
    </public>
  </interface>
</record>
<variable>
  <name>magnitude</name>
  <anchor>magnitude</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>491</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>JQjk2BKBxrFCuZwTvWN3mgew9hF</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>KvQe7W4psngLdA1A2RmypBVkB34</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The wrapped relative standard uncertainty magnitude</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>M</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<record>
  <name>representation_canonical_type</name>
  <anchor>representation_canonical_type-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>170</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3VNVqctAij8WiPwQ1AWB2ihbYR8S</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Expression-template linear algebra libraries (e.g. Eigen, Blaze, Armadillo) return lazy proxy types from their arithmetic operators. Such a proxy keeps references to its operands and must be evaluated to a concrete type before being stored inside a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>; otherwise the quantity would retain dangling references once the operands (often temporaries) go out of scope.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> deduction guides and the concepts that compute the representation type resulting from an arithmetic operation use this trait so that the stored representation is always a materialized concrete type. The primary template simply decays the type, which is correct for scalars and for vector/matrix types whose operators return a concrete value (e.g. </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>cartesian_vector</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, GLM). Specialize it for an expression-template type to name its evaluated type (for example to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Eigen::Matrix</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>&apos;s </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>PlainObject</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, or Blaze&apos;s </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ResultType</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>) — see the integration guide.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Maps a representation value type to the concrete type a quantity should store.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the representation value type (possibly an expression-template proxy)</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <derived>haAP4DDwZQWPLv34Z1n91Pnks96</derived>
  <interface>
    <public>
      <typedefs>3o1zkoAU61abAoJcpjkydiEittgs</typedefs>
    </public>
  </interface>
  <specializations>haAP4DDwZQWPLv34Z1n91Pnks96</specializations>
</record>
<typedef>
  <name>type</name>
  <anchor>type</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>173</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>3o1zkoAU61abAoJcpjkydiEittgs</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3VNVqctAij8WiPwQ1AWB2ihbYR8S</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The canonical (decayed) representation type stored by a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
          <identifier>remove_cvref_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>T</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<record>
  <name>representation_canonical_type</name>
  <anchor>representation_canonical_type-03</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>186</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>haAP4DDwZQWPLv34Z1n91Pnks96</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specialization stripping a top-level </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>const</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> before forwarding to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>representation_canonical_type&lt;T&gt;</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the (unqualified) representation value type</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <args>
      <type>
        <kind>type</kind>
        <type>
          <named>
            <kind>named</kind>
            <isConst/>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>T</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </type>
    </args>
    <primary>3VNVqctAij8WiPwQ1AWB2ihbYR8S</primary>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>3VNVqctAij8WiPwQ1AWB2ihbYR8S</id>
              <identifier>representation_canonical_type</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>T</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/customization_points.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
          <lineNumber>186</lineNumber>
          <columnNumber>49</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>3o1zkoAU61abAoJcpjkydiEittgs</typedefs>
    </public>
  </interface>
  <isListedOnPrimary/>
</record>
<typedef>
  <name>type</name>
  <anchor>type</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>173</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>3o1zkoAU61abAoJcpjkydiEittgs</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3VNVqctAij8WiPwQ1AWB2ihbYR8S</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The canonical (decayed) representation type stored by a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
          <identifier>remove_cvref_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>T</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<record>
  <name>representation_underlying_type</name>
  <anchor>representation_underlying_type-03a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>106</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>pa9cvciPHvw1w8XJp7nce3mZ12W</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The library uses this trait to discover the &quot;scalar element&quot; inside a representation type (e.g. </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>int</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> for </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>safe_int&lt;int&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>double</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> for </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>cartesian_vector&lt;double&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>). It is used to drive classification (integer vs floating-point scaling path, default of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>treat_as_floating_point</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, etc.) — it is </literal>
          </text>
          <strong>
            <kind>strong</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>not</literal>
              </text>
            </children>
          </strong>
          <text>
            <kind>text</kind>
            <literal> an indirection/dereference trait.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The primary template is intentionally empty so that types which do not expose an underlying type are cleanly recognized as &quot;leaf&quot; representations (the recursive unwrapping in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>detail::value_type_t</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> stops at them).</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Default detection (via partial specializations below) follows the same shape as the standard&apos;s </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>std::indirectly_readable_traits</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> for its </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>value_type</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> / </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>element_type</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> cases (see [readable.traits]): nested </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>::value_type</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, else nested </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>::element_type</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>; a top-level </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>const</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is passed through; the detected alias has its cv-qualification removed; and if a type provides both </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>::value_type</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>::element_type</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> whose underlying types differ after ignoring top-level cv-qualification, the trait is empty (the user must disambiguate explicitly). Pointer and array specializations from the standard are intentionally omitted — those are modeled by the standard&apos;s iterator machinery, not by this trait. Additionally, scoped enumeration types are supported via </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>std::underlying_type_t</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> — a representation-model extension not present in the standard&apos;s iterator-oriented trait (unscoped enums are excluded because they already implicitly convert to their underlying type).</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Describes the underlying arithmetic/element type of a representation type.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the representation type</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <derived>3j7uXQsF3UyM483z1vK71s11MxHL</derived>
  <specializations>kk8Spzk6BpESAxq6f8akDsWxShd 3j7uXQsF3UyM483z1vK71s11MxHL</specializations>
</record>
<record>
  <name>representation_underlying_type</name>
  <anchor>representation_underlying_type-036</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>124</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>kk8Spzk6BpESAxq6f8akDsWxShd</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specialization for scoped enumeration types.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a scoped enumeration type</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>6VALXicjnvqUvNBLg8YuzBeeroi</id>
            <identifier>has_value_type_member</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
    </params>
    <args>
      <type>
        <kind>type</kind>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>T</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </type>
    </args>
    <requires>detail::has_element_type_member&lt;T&gt; &amp;&amp;
           std::same_as&lt;std::remove_cv_t&lt;typename T::value_type&gt;, std::remove_cv_t&lt;typename T::element_type&gt;&gt;</requires>
    <primary>pa9cvciPHvw1w8XJp7nce3mZ12W</primary>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>pGKsEXJ1uhtb16L2uFiDjVhrn6S</id>
              <identifier>cond_underlying_type</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>value_type</identifier>
                          <prefix>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>T</identifier>
                            </identifier>
                          </prefix>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/customization_points.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
          <lineNumber>130</lineNumber>
          <columnNumber>44</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>7NUPuRS2yZAfjVM3xDMtKpkDzJa</typedefs>
    </public>
  </interface>
  <isListedOnPrimary/>
</record>
<typedef>
  <name>type</name>
  <anchor>type</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>126</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>typedef</kind>
  <id>7NUPuRS2yZAfjVM3xDMtKpkDzJa</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>kk8Spzk6BpESAxq6f8akDsWxShd</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The underlying integer type of the scoped enumeration </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>yFMiEu3aXjCmHVy38XmV7EPuFeF</id>
          <identifier>underlying_type_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>T</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<record>
  <name>representation_underlying_type</name>
  <anchor>representation_underlying_type-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>115</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3j7uXQsF3UyM483z1vK71s11MxHL</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specialization stripping a top-level </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>const</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> before forwarding to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>representation_underlying_type&lt;T&gt;</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the (unqualified) representation type</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <args>
      <type>
        <kind>type</kind>
        <type>
          <named>
            <kind>named</kind>
            <isConst/>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>T</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </type>
    </args>
    <primary>pa9cvciPHvw1w8XJp7nce3mZ12W</primary>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>pa9cvciPHvw1w8XJp7nce3mZ12W</id>
              <identifier>representation_underlying_type</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>T</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/customization_points.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
          <lineNumber>115</lineNumber>
          <columnNumber>50</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <isListedOnPrimary/>
</record>
<record>
  <name>representation_values</name>
  <anchor>representation_values</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>589</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>32CvsHWTsmMFS3CDAwu9iGBtJJah</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The zero, one, min, and max member functions in mp_units::quantity forward their work to these methods. This type can be specialized if the representation Rep requires a specific implementation to return these quantity objects.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A type trait that defines zero, one, min, and max for a representation type</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a representation type for which a type trait is defined</literal>
          </text>
        </children>
        <name>Rep</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>2MYos4kjsXkNVmGqNCTpRuNUrnbe</id>
              <identifier>duration_values</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>3SaGXCwtioK8YGFUAA4uVXNPNr7n</id>
                  <identifier>chrono</identifier>
                  <prefix>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                      <identifier>std</identifier>
                    </identifier>
                  </prefix>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Rep</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/customization_points.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
          <lineNumber>591</lineNumber>
          <columnNumber>32</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <staticFunctions>3XhJ8Vh3TBTCGsnYNebMdqk1T5Ha DAUZVmJVRefvJ4mX7ayQcyW8u93 3n83tDM3oWekkQpJABX8iJZyT4ne 65yPuZyHvcsfbwSv1CL4wpteUCy</staticFunctions>
    </public>
  </interface>
</record>
<function>
  <name>max</name>
  <anchor>max</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>591</lineNumber>
      <columnNumber>32</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3XhJ8Vh3TBTCGsnYNebMdqk1T5Ha</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>32CvsHWTsmMFS3CDAwu9iGBtJJah</parent>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>_Rep</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <storageClass>static</storageClass>
  <isRecordMethod/>
</function>
<function>
  <name>min</name>
  <anchor>min</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>591</lineNumber>
      <columnNumber>32</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>DAUZVmJVRefvJ4mX7ayQcyW8u93</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>32CvsHWTsmMFS3CDAwu9iGBtJJah</parent>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>_Rep</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <storageClass>static</storageClass>
  <isRecordMethod/>
</function>
<function>
  <name>one</name>
  <anchor>one</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>622</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3n83tDM3oWekkQpJABX8iJZyT4ne</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>32CvsHWTsmMFS3CDAwu9iGBtJJah</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the multiplicative identity (one) for the representation type.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Rep(1)</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Rep</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <requires>std::constructible_from&lt;Rep, int&gt;</requires>
  <constexpr>constexpr</constexpr>
  <storageClass>static</storageClass>
  <isRecordMethod/>
</function>
<function>
  <name>zero</name>
  <anchor>zero</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>591</lineNumber>
      <columnNumber>32</columnNumber>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>65yPuZyHvcsfbwSv1CL4wpteUCy</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>32CvsHWTsmMFS3CDAwu9iGBtJJah</parent>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>_Rep</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <storageClass>static</storageClass>
  <isRecordMethod/>
</function>
<record>
  <name>rounded_down_t</name>
  <anchor>rounded_down_t</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/rounding.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/rounding.h</sourcePath>
      <lineNumber>91</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3tW6B9CGr5gBq89ReHKFC4t3T82j</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Tag type for the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rounded_down</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> rounding policy</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <interface>
    <public>
      <functions>2NEkPnztm6WpnUs5hibDPqx9ym4t</functions>
    </public>
  </interface>
</record>
<function>
  <name>rounded_down_t</name>
  <anchor>2constructor</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/rounding.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/rounding.h</sourcePath>
      <lineNumber>93</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2NEkPnztm6WpnUs5hibDPqx9ym4t</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3tW6B9CGr5gBq89ReHKFC4t3T82j</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Default constructor</literal>
        </text>
      </children>
    </brief>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <funcClass>constructor</funcClass>
  <isDefaulted/>
  <isExplicitlyDefaulted/>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<record>
  <name>rounded_t</name>
  <anchor>rounded_t</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/rounding.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/rounding.h</sourcePath>
      <lineNumber>85</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2k742HvoWT3GgZMYfwCeYJfUD2VQ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Tag type for the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rounded</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> rounding policy</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <interface>
    <public>
      <functions>3fhdGq3xmX73gkPNKv8a6RpWXHm8</functions>
    </public>
  </interface>
</record>
<function>
  <name>rounded_t</name>
  <anchor>2constructor</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/rounding.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/rounding.h</sourcePath>
      <lineNumber>87</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3fhdGq3xmX73gkPNKv8a6RpWXHm8</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2k742HvoWT3GgZMYfwCeYJfUD2VQ</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Default constructor</literal>
        </text>
      </children>
    </brief>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <funcClass>constructor</funcClass>
  <isDefaulted/>
  <isExplicitlyDefaulted/>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<record>
  <name>rounded_up_t</name>
  <anchor>rounded_up_t</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/rounding.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/rounding.h</sourcePath>
      <lineNumber>97</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2hEGsYDLNBjUg6rzP46htufm2v3p</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Tag type for the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>rounded_up</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> rounding policy</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <interface>
    <public>
      <functions>2ixK5AYvdAg3q4Aff6yM4LZ9eYup</functions>
    </public>
  </interface>
</record>
<function>
  <name>rounded_up_t</name>
  <anchor>2constructor</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/rounding.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/rounding.h</sourcePath>
      <lineNumber>99</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2ixK5AYvdAg3q4Aff6yM4LZ9eYup</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2hEGsYDLNBjUg6rzP46htufm2v3p</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Default constructor</literal>
        </text>
      </children>
    </brief>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <funcClass>constructor</funcClass>
  <isDefaulted/>
  <isExplicitlyDefaulted/>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<record>
  <name>scaled_unit</name>
  <anchor>scaled_unit</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>325</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>164</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>37Hni5GLotfWzebVD7vLMqtadBws</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>User should not instantiate this type! It is not exported from the C++ module. The library will instantiate this type automatically based on the unit arithmetic equation provided by the user.</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Unit being a scaled version of another unit</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>magnitude describing the scale factor</literal>
          </text>
        </children>
        <name>M</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>reference unit being scaled</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>M</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>xKAh8ftVFPPg9yHq2Nj39wmoCFd</id>
                <identifier>UnitMagnitude</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(M != mag&lt;1&gt;)</requires>
  </template>
  <isFinal/>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>PJchxsTkLdezWQPwqY6mH6A8yj9</id>
              <identifier>scaled_unit_impl</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <constant>
                  <kind>constant</kind>
                  <value>M</value>
                </constant>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>U</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/unit_definitions.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
          <lineNumber>327</lineNumber>
          <columnNumber>28</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <typedefs>27f4Fh6MVtSF28nHW443YcDrmmGp</typedefs>
      <staticVariables>4NyAx5PCrayVSwjvvbeCa6wyrRan 4QQLKxe9Qi4eMqkfZRwQdoLN9m5k</staticVariables>
    </public>
  </interface>
</record>
<typedef>
  <name>_base_type_</name>
  <anchor>_base_type_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>327</lineNumber>
      <columnNumber>28</columnNumber>
    </defLoc>
  </loc>
  <kind>typedef</kind>
  <id>27f4Fh6MVtSF28nHW443YcDrmmGp</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>37Hni5GLotfWzebVD7vLMqtadBws</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>PJchxsTkLdezWQPwqY6mH6A8yj9</id>
          <identifier>scaled_unit_impl</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isUsing/>
</typedef>
<variable>
  <name>_mag_</name>
  <anchor>_mag_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>327</lineNumber>
      <columnNumber>28</columnNumber>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4NyAx5PCrayVSwjvvbeCa6wyrRan</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>37Hni5GLotfWzebVD7vLMqtadBws</parent>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>xKAh8ftVFPPg9yHq2Nj39wmoCFd</id>
          <identifier>UnitMagnitude</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>M</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>_reference_unit_</name>
  <anchor>_reference_unit_</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>327</lineNumber>
      <columnNumber>28</columnNumber>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4QQLKxe9Qi4eMqkfZRwQdoLN9m5k</id>
  <access>public</access>
  <extraction>regular</extraction>
  <isCopyFromInherited/>
  <parent>37Hni5GLotfWzebVD7vLMqtadBws</parent>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>U</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>{}</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>standard_uncertainty</name>
  <anchor>standard_uncertainty</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>527</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>3meCZ8xJrDYoXxn83Jp1BiVHzMNw</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Wraps the standard uncertainty (GUM/CODATA </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>) of a measured constant as an exact symbolic expression of the same shape as the constant&apos;s value: a magnitude times a unit of the same dimension. Spelling the unit out makes the expression self-contained - the relative form derives as an exact ratio of two canonical magnitudes, with the units cancelling exactly. Like </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>relative_standard_uncertainty</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, it is metadata only.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A measured constant declares exactly one of the two wrappers - whichever form its source publishes. Metrology tables (e.g., CODATA) tabulate the absolute uncertainty next to the value, both rounded consistently, so a definition transcribing a table row should use this form; deriving it from a published </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u_r</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> instead can be off by several percent in the last digit.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>For example:</literal>
          </text>
        </children>
      </paragraph>
      <code>
        <kind>code</kind>
        <literal>inline constexpr struct newtonian_constant_of_gravitation final :
    named_constant&lt;&quot;G&quot;, mag_ratio&lt;667&apos;430, 100&apos;000&gt; * mag_power&lt;10, -11&gt; * m3 / kg / s2,
                   standard_uncertainty{mag_ratio&lt;15, 10&gt; * mag_power&lt;10, -15&gt; * m3 / kg / s2}&gt; {}
newtonian_constant_of_gravitation;</literal>
        <info>cpp</info>
      </code>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Absolute standard uncertainty of a measured constant</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit expression representing the standard uncertainty in the constant&apos;s dimension</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <interface>
    <public>
      <variables>3aNN2su8vBiUpgDNBXR6mbsPnTkF</variables>
    </public>
  </interface>
</record>
<variable>
  <name>unit</name>
  <anchor>unit</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
        <lineNumber>529</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>3aNN2su8vBiUpgDNBXR6mbsPnTkF</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>3meCZ8xJrDYoXxn83Jp1BiVHzMNw</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The wrapped standard uncertainty unit expression</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>U</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<record>
  <name>symbol_text</name>
  <anchor>symbol_text-032</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>184</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>63</lineNumber>
        <columnNumber>17</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>This class template is responsible for definition and handling of a symbol text representation. In the libary it is used to define symbols of units and prefixes. Each symbol can have two versions: UTF-8 and portable.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A symbol text representation</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The size of a UTF-8 symbol</literal>
          </text>
        </children>
        <name>N</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The size of the portable symbol</literal>
          </text>
        </children>
        <name>M</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>class</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>N</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>M</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
  </template>
  <bases>
    <baseInfo>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>UUcadh6BDMh3tM9didYeTgCbfZb</id>
              <identifier>symbol_text_iface</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
      <access>public</access>
      <loc>
        <defLoc>
          <shortPath>mp-units/framework/symbol_text.h</shortPath>
          <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
          <lineNumber>185</lineNumber>
          <columnNumber>21</columnNumber>
        </defLoc>
      </loc>
    </baseInfo>
  </bases>
  <interface>
    <public>
      <functions>Esiu4GaMSkxyhMvwGJNKZJXgspR xZnwhAqG7jkx7WS3x1SFTXT4Ss7 KHjvbBkk2BJQNiX9qW8vvcXzrrz 33FeXEv2jYkNxyRcekS3jzKFF34M 2aETG6h4LZw6qGpnq3pF4qUpuG5f 6UuEzLY3gP6eyebxcFuaByr1koP</functions>
      <variables>4Agpeq7yX89N9Jwcvb7FbKU6rrvu 45sERtoeWxsiaZGphH8dgBMHppJ6</variables>
    </public>
  </interface>
  <deductionGuides>2MEHhoNaYdMRKXD1J9RbZdtP4pvZ 4VCoXHrj66kKijUz6uM4ybGgAsA8 2gW28gGggKebfbujvx7Mj88R7Ubk SjCEsW8nojeUm5mQv3fP75Q6XPF tS4CSHbMB9XzKkJGe4kb3KZje7a</deductionGuides>
</record>
<overloads>
  <name>symbol_text</name>
  <anchor>2constructor-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>198</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>Esiu4GaMSkxyhMvwGJNKZJXgspR</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>i4mN4SDVW1sC1TDABKsaGtziHbz</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructors</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>character used for both the UTF-8 and the portable rendering</literal>
          </text>
        </children>
        <name>ch</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>fixed string used for both the UTF-8 and the portable rendering</literal>
          </text>
        </children>
        <name>txt</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>fixed string defining the UTF-8 rendering</literal>
          </text>
        </children>
        <name>utf8</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>fixed string defining the portable rendering</literal>
          </text>
        </children>
        <name>portable</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>UTF-8 string literal defining the UTF-8 rendering</literal>
          </text>
        </children>
        <name>u</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>narrow string literal defining the portable rendering</literal>
          </text>
        </children>
        <name>a</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>constructor</funcClass>
  <members>27mvGVyedLa3ZKLzo7FxP4xJkX4P 4PrnVBuxqmp5WEBBe2spfqqxjk3t 3P329eh5woZ6HU6bk8zPT2kAwYdf 3kCPkNnhGEvmf1amkiavm55BVMvW 21eeVavurzu8Sw6LEWyV6HaBbcqZ</members>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
</overloads>
<function>
  <name>symbol_text</name>
  <anchor>2constructor-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>198</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>27mvGVyedLa3ZKLzo7FxP4xJkX4P</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>i4mN4SDVW1sC1TDABKsaGtziHbz</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a symbol text from a single character</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>character used for both the UTF-8 and the portable rendering</literal>
          </text>
        </children>
        <name>ch</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>char</identifier>
            </identifier>
          </name>
          <fundamentalType>char</fundamentalType>
        </named>
      </type>
      <name>ch</name>
    </param>
  </params>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>symbol_text</name>
  <anchor>2constructor-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>222</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4PrnVBuxqmp5WEBBe2spfqqxjk3t</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>i4mN4SDVW1sC1TDABKsaGtziHbz</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a symbol text from a fixed string</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>fixed string used for both the UTF-8 and the portable rendering</literal>
          </text>
        </children>
        <name>txt</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>4FJnHCB9VAAzQgxJdRPNFtwnAPAb</id>
                  <identifier>fixed_string</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>txt</name>
    </param>
  </params>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>symbol_text</name>
  <anchor>2constructor-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>209</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3P329eh5woZ6HU6bk8zPT2kAwYdf</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>i4mN4SDVW1sC1TDABKsaGtziHbz</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a symbol text from a narrow string literal</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>string literal used for both the UTF-8 and the portable rendering</literal>
          </text>
        </children>
        <name>txt</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <array>
              <kind>array</kind>
              <elementType>
                <named>
                  <kind>named</kind>
                  <isConst/>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>char</identifier>
                    </identifier>
                  </name>
                  <fundamentalType>char</fundamentalType>
                </named>
              </elementType>
              <bounds>
                <written>N + 1</written>
              </bounds>
            </array>
          </pointeeType>
        </lValueReference>
      </type>
      <name>txt</name>
    </param>
  </params>
  <funcClass>constructor</funcClass>
  <constexpr>consteval</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>symbol_text</name>
  <anchor>2constructor-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>248</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3kCPkNnhGEvmf1amkiavm55BVMvW</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>i4mN4SDVW1sC1TDABKsaGtziHbz</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a symbol text from separate UTF-8 and portable fixed strings</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>fixed string defining the UTF-8 rendering</literal>
          </text>
        </children>
        <name>utf8</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>fixed string defining the portable rendering</literal>
          </text>
        </children>
        <name>portable</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>EUR8d61S1WxEe8azn8ugmzAGxca</id>
                  <identifier>fixed_u8string</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>utf8</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>4FJnHCB9VAAzQgxJdRPNFtwnAPAb</id>
                  <identifier>fixed_string</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>M</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>portable</name>
    </param>
  </params>
  <funcClass>constructor</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>symbol_text</name>
  <anchor>2constructor-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>235</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>21eeVavurzu8Sw6LEWyV6HaBbcqZ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>i4mN4SDVW1sC1TDABKsaGtziHbz</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a symbol text from separate UTF-8 and portable string literals</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>UTF-8 string literal defining the UTF-8 rendering</literal>
          </text>
        </children>
        <name>u</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>narrow string literal defining the portable rendering</literal>
          </text>
        </children>
        <name>a</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <array>
              <kind>array</kind>
              <elementType>
                <named>
                  <kind>named</kind>
                  <isConst/>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>char8_t</identifier>
                    </identifier>
                  </name>
                  <fundamentalType>char8_t</fundamentalType>
                </named>
              </elementType>
              <bounds>
                <written>N + 1</written>
              </bounds>
            </array>
          </pointeeType>
        </lValueReference>
      </type>
      <name>u</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <array>
              <kind>array</kind>
              <elementType>
                <named>
                  <kind>named</kind>
                  <isConst/>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>char</identifier>
                    </identifier>
                  </name>
                  <fundamentalType>char</fundamentalType>
                </named>
              </elementType>
              <bounds>
                <written>M + 1</written>
              </bounds>
            </array>
          </pointeeType>
        </lValueReference>
      </type>
      <name>a</name>
    </param>
  </params>
  <funcClass>constructor</funcClass>
  <constexpr>consteval</constexpr>
  <isRecordMethod/>
</function>
<function>
  <name>ascii</name>
  <anchor>ascii</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>273</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>xZnwhAqG7jkx7WS3x1SFTXT4Ss7</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>i4mN4SDVW1sC1TDABKsaGtziHbz</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated accessor for the portable rendering; use </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>portable()</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> instead</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the portable rendering of the symbol</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.4.0: Use `portable()` instead&quot;</string>
      </balancedTokens>
      <message>2.4.0: Use `portable()` instead</message>
    </deprecated>
  </attributes>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <auto>
          <kind>auto</kind>
          <isConst/>
          <keyword>auto</keyword>
        </auto>
      </pointeeType>
    </lValueReference>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>empty</name>
  <anchor>empty</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>279</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>KHjvbBkk2BJQNiX9qW8vvcXzrrz</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>i4mN4SDVW1sC1TDABKsaGtziHbz</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether both the UTF-8 and the portable renderings of the symbol are empty</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if both the UTF-8 and the portable renderings are empty, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>portable</name>
  <anchor>portable</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>263</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>33FeXEv2jYkNxyRcekS3jzKFF34M</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>i4mN4SDVW1sC1TDABKsaGtziHbz</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the portable rendering of the symbol</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the portable rendering of the symbol</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <auto>
          <kind>auto</kind>
          <isConst/>
          <keyword>auto</keyword>
        </auto>
      </pointeeType>
    </lValueReference>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>unicode</name>
  <anchor>unicode</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>268</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2aETG6h4LZw6qGpnq3pF4qUpuG5f</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>i4mN4SDVW1sC1TDABKsaGtziHbz</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated accessor for the UTF-8 rendering; use </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>utf8()</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> instead</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the UTF-8 rendering of the symbol</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.4.0: Use `utf8()` instead&quot;</string>
      </balancedTokens>
      <message>2.4.0: Use `utf8()` instead</message>
    </deprecated>
  </attributes>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <auto>
          <kind>auto</kind>
          <isConst/>
          <keyword>auto</keyword>
        </auto>
      </pointeeType>
    </lValueReference>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<function>
  <name>utf8</name>
  <anchor>utf8</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>258</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>6UuEzLY3gP6eyebxcFuaByr1koP</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>i4mN4SDVW1sC1TDABKsaGtziHbz</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the UTF-8 rendering of the symbol</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the UTF-8 rendering of the symbol</literal>
          </text>
        </children>
      </returns>
    </returns>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <auto>
          <kind>auto</kind>
          <isConst/>
          <keyword>auto</keyword>
        </auto>
      </pointeeType>
    </lValueReference>
  </returnType>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
  <isConst/>
</function>
<variable>
  <name>portable_</name>
  <anchor>portable_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>190</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>4Agpeq7yX89N9Jwcvb7FbKU6rrvu</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>i4mN4SDVW1sC1TDABKsaGtziHbz</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The portable (basic literal character set) rendering of the symbol</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>4FJnHCB9VAAzQgxJdRPNFtwnAPAb</id>
          <identifier>fixed_string</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>M</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<variable>
  <name>utf8_</name>
  <anchor>utf8_</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>188</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>45sERtoeWxsiaZGphH8dgBMHppJ6</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>i4mN4SDVW1sC1TDABKsaGtziHbz</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The UTF-8 rendering of the symbol</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>EUR8d61S1WxEe8azn8ugmzAGxca</id>
          <identifier>fixed_u8string</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>N</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<record>
  <name>truncated_t</name>
  <anchor>truncated_t</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/rounding.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/rounding.h</sourcePath>
      <lineNumber>79</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2VSEeX5pPfQQcYBtyEpWPPwzChuv</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A conversion without a policy (e.g. </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>q.in(u)</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>) is only available when the framework considers it value-preserving (following the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>std::chrono</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> convention, a floating-point destination is always considered such). For the conversions considered truncating (e.g. an integral representation scaled by a non-integral factor, or a narrowing of the representation type), the user has to explicitly state what should happen to the information that does not fit by passing a rounding policy as the last function argument:</literal>
          </text>
        </children>
      </paragraph>
      <code>
        <kind>code</kind>
        <literal>quantity q1 = (1234 * m).in(km, truncated);          // 1 km
quantity q2 = (1567 * m).in(km, rounded);            // 2 km
quantity q3 = (-1500 * m).in(km, rounded_down);      // -2 km
quantity q4 = (1.23 * s).in&lt;int&gt;(ms, rounded_up);    // 1231 ms</literal>
        <info>cpp</info>
      </code>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The policy specifies how to round the exact conversion result to a value representable in the destination type:</literal>
          </text>
        </children>
      </paragraph>
      <list>
        <kind>list</kind>
        <items>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>truncated</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> - the semantics of </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>static_cast</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> and </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>std::chrono::duration_cast</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal>: rounds towards zero for an integral destination; a floating-point destination converts to the nearest representable value,</literal>
                  </text>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>rounded</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> - rounds to the nearest representable value, to even in halfway cases (the semantics of </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>std::chrono::round</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal>),</literal>
                  </text>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>rounded_down</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> - rounds towards negative infinity (the semantics of </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>std::chrono::floor</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal>),</literal>
                  </text>
                </children>
              </paragraph>
            </blocks>
          </listItem>
          <listItem>
            <blocks>
              <paragraph>
                <kind>paragraph</kind>
                <children>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>rounded_up</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal> - rounds towards positive infinity (the semantics of </literal>
                  </text>
                  <code>
                    <kind>code</kind>
                    <children>
                      <text>
                        <kind>text</kind>
                        <literal>std::chrono::ceil</literal>
                      </text>
                    </children>
                  </code>
                  <text>
                    <kind>text</kind>
                    <literal>).</literal>
                  </text>
                </children>
              </paragraph>
            </blocks>
          </listItem>
        </items>
        <listKind>unordered</listKind>
      </list>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A floating-point destination represents every conversion result with a rounding error of at most half ULP (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rounded</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> semantics), and the directed modes cannot be delivered for it, which is why it accepts only the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>truncated</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rounded</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> policies.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Note that </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>mp_units::floor/ceil/round&lt;U&gt;(q)</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> perform a different operation: they round to an integral multiple of the target unit even when the representation could store the exact result (e.g. for a floating-point representation). The policies never adjust a value that the destination represents exactly. Both coincide for integral representations.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Tag type for the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>truncated</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> rounding policy</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <interface>
    <public>
      <functions>3fDx68j6DtRfPXR6TDNpN4Hafvm</functions>
    </public>
  </interface>
</record>
<function>
  <name>truncated_t</name>
  <anchor>2constructor</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/rounding.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/rounding.h</sourcePath>
      <lineNumber>81</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3fDx68j6DtRfPXR6TDNpN4Hafvm</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2VSEeX5pPfQQcYBtyEpWPPwzChuv</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Default constructor</literal>
        </text>
      </children>
    </brief>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>void</identifier>
        </identifier>
      </name>
      <fundamentalType>void</fundamentalType>
    </named>
  </returnType>
  <funcClass>constructor</funcClass>
  <isDefaulted/>
  <isExplicitlyDefaulted/>
  <constexpr>constexpr</constexpr>
  <isRecordMethod/>
</function>
<record>
  <name>unit_symbol_formatting</name>
  <anchor>unit_symbol_formatting</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_symbol_formatting.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_symbol_formatting.h</sourcePath>
      <lineNumber>65</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>2JsunG93mWGvhraHopNZ5RNNVJUP</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specifies the options used to format a unit symbol</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <interface>
    <public>
      <variables>2ozRCDrHgYFJkYaUSFroSBBVhWPK 2S48WMzzAS5SAnKZSAk58oSK1bMd 2HYiD9CP7nVrpjB4QHtb55wgS2Ww</variables>
    </public>
  </interface>
</record>
<variable>
  <name>char_set</name>
  <anchor>char_set</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_symbol_formatting.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_symbol_formatting.h</sourcePath>
        <lineNumber>68</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>2ozRCDrHgYFJkYaUSFroSBBVhWPK</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2JsunG93mWGvhraHopNZ5RNNVJUP</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The character set used to format the symbol</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>p64pSthzNphpzitvMwpEkwsvGnj</id>
          <identifier>character_set</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>character_set::default_character_set</initializer>
  <isRecordField/>
</variable>
<variable>
  <name>separator</name>
  <anchor>separator</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_symbol_formatting.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_symbol_formatting.h</sourcePath>
        <lineNumber>80</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>2S48WMzzAS5SAnKZSAk58oSK1bMd</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2JsunG93mWGvhraHopNZ5RNNVJUP</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The separator placed between symbol factors.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>4JGzXjLwhZhRJT4Ck7pdiZGJvAtQ</id>
          <identifier>unit_symbol_separator</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>unit_symbol_separator::default_separator</initializer>
  <isRecordField/>
</variable>
<variable>
  <name>solidus</name>
  <anchor>solidus</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_symbol_formatting.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_symbol_formatting.h</sourcePath>
        <lineNumber>77</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>2HYiD9CP7nVrpjB4QHtb55wgS2Ww</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2JsunG93mWGvhraHopNZ5RNNVJUP</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>How the solidus is used in the denominator</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>BtkpK1Lsm8NaBA7ZDNQr6mVq5Tx</id>
          <identifier>unit_symbol_solidus</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>unit_symbol_solidus::default_solidus</initializer>
  <isRecordField/>
</variable>
<record>
  <name>vector_axes</name>
  <anchor>vector_axes</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/vector_components.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/vector_components.h</sourcePath>
      <lineNumber>134</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>MzzebNBtY66pJzhCVwFPzYEhhU4</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A user opts a vector whole into decomposition by specializing </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>vector_components</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> (the customization point in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>customization_points.h</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>) and inheriting from this template, listing the per-axis quantity specs in coordinate order:</literal>
          </text>
        </children>
      </paragraph>
      <code>
        <kind>code</kind>
        <literal>template&lt;&gt;
struct mp_units::vector_components&lt;flight_velocity&gt; :
    mp_units::vector_axes&lt;forward_velocity, wind_drift, sink_rate&gt; {};</literal>
      </code>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The axis-intrinsic preconditions are enforced here: every axis must be a vector quantity, the axes must share a common hierarchy root (be the same kind of quantity), and they must be pairwise-distinct kinds (declare each with </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>is_kind</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>). A specialization that violates them is ill-formed at the point of definition. The relational preconditions (axes share the whole&apos;s hierarchy root, differ from the whole&apos;s kind, and fit the representation) need the whole and the representation, so they are enforced by the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Decomposable</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> concept.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Ordered list of the 1D-vector component axes a vector quantity decomposes into</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Axes</name>
        <isParameterPack/>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
                <identifier>QuantitySpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
    <requires>detail::ValidVectorAxes&lt;Axes...&gt;</requires>
  </template>
  <interface>
    <public>
      <staticVariables>fta7q9EiBr3HCdfDD3cYEfnFuM8 3pSGnGGXgRSR1FyhhDkw4fuythkd</staticVariables>
    </public>
  </interface>
</record>
<variable>
  <name>axis</name>
  <anchor>axis</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/vector_components.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/vector_components.h</sourcePath>
      <lineNumber>142</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>fta7q9EiBr3HCdfDD3cYEfnFuM8</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>MzzebNBtY66pJzhCVwFPzYEhhU4</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The quantity spec of the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Idx</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>-th component axis, in the order the axes were listed.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
          <identifier>QuantitySpec</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Idx</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
  </template>
  <initializer>detail::nth_value&lt;Idx, Axes...&gt;()</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>size</name>
  <anchor>size</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/vector_components.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/vector_components.h</sourcePath>
      <lineNumber>138</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3pSGnGGXgRSR1FyhhDkw4fuythkd</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>MzzebNBtY66pJzhCVwFPzYEhhU4</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The number of component axes.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
          <identifier>size_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>sizeof...(Axes)</initializer>
  <storageClass>static</storageClass>
  <isInline/>
  <isConstexpr/>
</variable>
<record>
  <name>vector_components</name>
  <anchor>vector_components</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/customization_points.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
        <lineNumber>723</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>record</kind>
  <id>S5HY4fSGyYou41FPP867sdZ5rB2</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Specialize for a vector </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_spec</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and inherit from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>vector_axes,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> listing the per-axis quantity specs in coordinate order (see </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>mp-units/framework/vector_components.h)</literal>
              </text>
            </children>
          </code>
        </children>
      </paragraph>
      <code>
        <kind>code</kind>
        <literal>template&lt;&gt;
struct mp_units::vector_components&lt;flight_velocity&gt; :
    mp_units::vector_axes&lt;forward_velocity, wind_drift, sink_rate&gt; {};</literal>
      </code>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Left undefined (the quantity is not decomposable) unless specialized. Only a concrete vector quantity spec may be decomposed, so a specialization for a non-vector spec or for a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>kind_of&lt;&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> quantity kind is ill-formed.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Opts a vector quantity into decomposition into named 1D-vector components</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the vector quantity spec being decomposed</literal>
          </text>
        </children>
        <name>QS</name>
      </tParam>
    </tparams>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
                <identifier>QuantitySpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
    <requires>(get_character(QS).order == quantity_tensor_order::vector) &amp;&amp;
          (!detail::QuantityKindSpec&lt;MP_UNITS_REMOVE_CONST(decltype(QS))&gt;)</requires>
  </template>
</record>
<record>
  <name>wrap_to_range</name>
  <anchor>wrap_to_range</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>156</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>record</kind>
  <id>GF3Tm818AtZ6cbEgeA23kpWqBqq</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Uses modulo arithmetic to wrap values into the range. Use for periodic/cyclic quantities (angles, time-of-day, etc.). For example, with [0°, 360°): 370° -&gt; 10°, -10° -&gt; 350°.]</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Policy that wraps the value into the half-open range [min, max).]</literal>
        </text>
      </children>
    </brief>
  </doc>
  <keyKind>struct</keyKind>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <interface>
    <public>
      <functions>3F3v3WZcK9XWpQWuFTSmYbMPL3y7</functions>
      <variables>3tN66LcRwzfjAVqgeekLv6qUaexe 4FerpXq4AENn8boyBmA89xHubiP5</variables>
    </public>
  </interface>
</record>
<function>
  <name>operator()</name>
  <anchor>operator_call</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/overflow_policies.h</shortPath>
      <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
      <lineNumber>166</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3F3v3WZcK9XWpQWuFTSmYbMPL3y7</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>GF3Tm818AtZ6cbEgeA23kpWqBqq</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Wraps </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>v</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> into the half-open range [</literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>min</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>max</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>).]</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>v</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> shifted by a multiple of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>max - min</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> so that it lies in [</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>min</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>max</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>)]</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value to wrap</literal>
          </text>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>V</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>V</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>v</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>V</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>()</overloadedOperator>
  <isRecordMethod/>
  <isConst/>
</function>
<variable>
  <name>max</name>
  <anchor>max</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/overflow_policies.h</shortPath>
        <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
        <lineNumber>159</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>3tN66LcRwzfjAVqgeekLv6qUaexe</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>GF3Tm818AtZ6cbEgeA23kpWqBqq</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The upper boundary of the wrapping range (exclusive)</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Q</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<variable>
  <name>min</name>
  <anchor>min</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/overflow_policies.h</shortPath>
        <sourcePath>src/core/include/mp-units/overflow_policies.h</sourcePath>
        <lineNumber>158</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>variable</kind>
  <id>4FerpXq4AENn8boyBmA89xHubiP5</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>GF3Tm818AtZ6cbEgeA23kpWqBqq</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The lower boundary of the wrapping range (inclusive)</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Q</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isRecordField/>
</variable>
<enum>
  <name>character_set</name>
  <anchor>character_set</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/symbol_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
      <lineNumber>49</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>enum</kind>
  <id>p64pSthzNphpzitvMwpEkwsvGnj</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Character set used to render a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>symbol_text</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <scoped/>
  <underlyingType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2QrdNTAwvAgZKS48NYJmN5ZojAGy</id>
          <identifier>int8_t</identifier>
        </identifier>
      </name>
    </named>
  </underlyingType>
  <constants>az1uEW8nNVE1FTyCTnVKVZkwQme cAWhfRa9jeLW9aQ6prF5zD7t6TR c8eS5Et4tJxMf5RbnMAa2zBgzwB 3AtX1aFr8PEuaRVLCaFHqtSugQQQ 44kA8cvh8eDoNfPFBe775Lsccmd 2V9RoxTnLFqzuqtEQwH12rdT1d3F</constants>
</enum>
<enumConstant>
  <name>utf8</name>
  <anchor>utf8</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>50</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>az1uEW8nNVE1FTyCTnVKVZkwQme</id>
  <extraction>regular</extraction>
  <parent>p64pSthzNphpzitvMwpEkwsvGnj</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>UTF-8 rendering, e.g. µs; m³; L²MT⁻³</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enumConstant>
  <name>unicode</name>
  <anchor>unicode</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>51</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>cAWhfRa9jeLW9aQ6prF5zD7t6TR</id>
  <extraction>regular</extraction>
  <parent>p64pSthzNphpzitvMwpEkwsvGnj</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated alias for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>utf8</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.4.0: Use `utf8` instead&quot;</string>
      </balancedTokens>
      <message>2.4.0: Use `utf8` instead</message>
    </deprecated>
  </attributes>
  <initializer>
    <written>utf8</written>
    <value>0</value>
  </initializer>
</enumConstant>
<enumConstant>
  <name>portable</name>
  <anchor>portable</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>52</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>c8eS5Et4tJxMf5RbnMAa2zBgzwB</id>
  <extraction>regular</extraction>
  <parent>p64pSthzNphpzitvMwpEkwsvGnj</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Portable (basic literal character set) rendering, e.g. us; m^3; L^2MT^-3</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enumConstant>
  <name>ascii</name>
  <anchor>ascii</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>53</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>3AtX1aFr8PEuaRVLCaFHqtSugQQQ</id>
  <extraction>regular</extraction>
  <parent>p64pSthzNphpzitvMwpEkwsvGnj</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated alias for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>portable</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.4.0: Use `portable` instead&quot;</string>
      </balancedTokens>
      <message>2.4.0: Use `portable` instead</message>
    </deprecated>
  </attributes>
  <initializer>
    <written>portable</written>
    <value>1</value>
  </initializer>
</enumConstant>
<enumConstant>
  <name>default_character_set</name>
  <anchor>default_character_set</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>54</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>44kA8cvh8eDoNfPFBe775Lsccmd</id>
  <extraction>regular</extraction>
  <parent>p64pSthzNphpzitvMwpEkwsvGnj</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The character set used by default</literal>
        </text>
      </children>
    </brief>
  </doc>
  <initializer>
    <written>utf8</written>
    <value>0</value>
  </initializer>
</enumConstant>
<enumConstant>
  <name>default_encoding</name>
  <anchor>default_encoding</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>56</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>2V9RoxTnLFqzuqtEQwH12rdT1d3F</id>
  <extraction>regular</extraction>
  <parent>p64pSthzNphpzitvMwpEkwsvGnj</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated alias for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>default_character_set</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.5.0: Use `default_character_set` instead&quot;</string>
      </balancedTokens>
      <message>2.5.0: Use `default_character_set` instead</message>
    </deprecated>
  </attributes>
  <initializer>
    <written>default_character_set</written>
    <value>0</value>
  </initializer>
</enumConstant>
<enum>
  <name>quantity_character_legacy</name>
  <anchor>quantity_character_legacy</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_character.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
      <lineNumber>78</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>enum</kind>
  <id>3rPzTGJwW8XixHbnVJN6sJFFPksg</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The pre-2.6.0 flat quantity character enumeration</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use the &apos;quantity_tensor_order&apos; and &apos;quantity_field&apos; axes instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use the &apos;quantity_tensor_order&apos; and &apos;quantity_field&apos; axes instead</message>
    </deprecated>
  </attributes>
  <scoped/>
  <underlyingType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2QrdNTAwvAgZKS48NYJmN5ZojAGy</id>
          <identifier>int8_t</identifier>
        </identifier>
      </name>
    </named>
  </underlyingType>
  <constants>2NEjs3pxqWavqT8pQmqRv3xTJK4p rYPAbGEwCuYXvEdiUU3Jgi1XLNR 38MQdPVQdwteunKzoDvjpsttUjSj 45c7tt6LXwQvTZRNHj6FcPhNVq7m</constants>
</enum>
<enumConstant>
  <name>real_scalar</name>
  <anchor>real_scalar</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_character.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
        <lineNumber>79</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>2NEjs3pxqWavqT8pQmqRv3xTJK4p</id>
  <extraction>regular</extraction>
  <parent>3rPzTGJwW8XixHbnVJN6sJFFPksg</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A real-valued scalar.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use the &apos;quantity_tensor_order&apos; and &apos;quantity_field&apos; axes instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use the &apos;quantity_tensor_order&apos; and &apos;quantity_field&apos; axes instead</message>
    </deprecated>
  </attributes>
</enumConstant>
<enumConstant>
  <name>complex_scalar</name>
  <anchor>complex_scalar</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_character.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
        <lineNumber>80</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>rYPAbGEwCuYXvEdiUU3Jgi1XLNR</id>
  <extraction>regular</extraction>
  <parent>3rPzTGJwW8XixHbnVJN6sJFFPksg</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A complex-valued scalar.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use the &apos;quantity_tensor_order&apos; and &apos;quantity_field&apos; axes instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use the &apos;quantity_tensor_order&apos; and &apos;quantity_field&apos; axes instead</message>
    </deprecated>
  </attributes>
</enumConstant>
<enumConstant>
  <name>vector</name>
  <anchor>vector</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_character.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
        <lineNumber>81</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>38MQdPVQdwteunKzoDvjpsttUjSj</id>
  <extraction>regular</extraction>
  <parent>3rPzTGJwW8XixHbnVJN6sJFFPksg</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A real-valued vector.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use the &apos;quantity_tensor_order&apos; and &apos;quantity_field&apos; axes instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use the &apos;quantity_tensor_order&apos; and &apos;quantity_field&apos; axes instead</message>
    </deprecated>
  </attributes>
</enumConstant>
<enumConstant>
  <name>tensor</name>
  <anchor>tensor</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_character.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
        <lineNumber>82</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>45c7tt6LXwQvTZRNHj6FcPhNVq7m</id>
  <extraction>regular</extraction>
  <parent>3rPzTGJwW8XixHbnVJN6sJFFPksg</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A real-valued tensor.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: use the &apos;quantity_tensor_order&apos; and &apos;quantity_field&apos; axes instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: use the &apos;quantity_tensor_order&apos; and &apos;quantity_field&apos; axes instead</message>
    </deprecated>
  </attributes>
</enumConstant>
<enum>
  <name>quantity_field</name>
  <anchor>quantity_field</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_character.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
      <lineNumber>62</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>enum</kind>
  <id>NDjCLK6Czy4KDn8XVDNpzkhL9BM</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Distinguishes real quantities from complex ones (such as a voltage phasor or a complex permittivity), which affects the operations a quantity admits.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The numeric field axis of a quantity&apos;s character</literal>
        </text>
      </children>
    </brief>
  </doc>
  <scoped/>
  <underlyingType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2QrdNTAwvAgZKS48NYJmN5ZojAGy</id>
          <identifier>int8_t</identifier>
        </identifier>
      </name>
    </named>
  </underlyingType>
  <constants>4ZnzdEtp2m9FiubFYXqtqshyy74u 2q6XM1Bnfya94mHyHbbxCjEqVZfH</constants>
</enum>
<enumConstant>
  <name>real</name>
  <anchor>real</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_character.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
        <lineNumber>63</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>4ZnzdEtp2m9FiubFYXqtqshyy74u</id>
  <extraction>regular</extraction>
  <parent>NDjCLK6Czy4KDn8XVDNpzkhL9BM</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A quantity represented by a real number.</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enumConstant>
  <name>complex</name>
  <anchor>complex</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_character.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
        <lineNumber>64</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>2q6XM1Bnfya94mHyHbbxCjEqVZfH</id>
  <extraction>regular</extraction>
  <parent>NDjCLK6Czy4KDn8XVDNpzkhL9BM</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A quantity represented by a complex number.</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enum>
  <name>quantity_tensor_order</name>
  <anchor>quantity_tensor_order</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_character.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
      <lineNumber>50</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>enum</kind>
  <id>nJoSptYF9go7dPKS8BAfAUiD1bP</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A quantity&apos;s character splits into two orthogonal axes: its </literal>
          </text>
          <emph>
            <kind>emph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>tensor order</literal>
              </text>
            </children>
          </emph>
          <text>
            <kind>text</kind>
            <literal> (scalar, vector, tensor) and its </literal>
          </text>
          <emph>
            <kind>emph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>numeric field</literal>
              </text>
            </children>
          </emph>
          <text>
            <kind>text</kind>
            <literal> (real, complex). The enumerators are declared in increasing rank so that the underlying comparison orders them (scalar &lt; vector &lt; tensor, real &lt; complex).</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The tensor order axis of a quantity&apos;s character</literal>
        </text>
      </children>
    </brief>
  </doc>
  <scoped/>
  <underlyingType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2QrdNTAwvAgZKS48NYJmN5ZojAGy</id>
          <identifier>int8_t</identifier>
        </identifier>
      </name>
    </named>
  </underlyingType>
  <constants>35aLf39A7TuUNrUR4xeVzog2h518 2rL1MZZX3EBiZJXKqa78UmidAUez 3M88EMefMHjedwjxkzQndwhdDzsJ</constants>
</enum>
<enumConstant>
  <name>scalar</name>
  <anchor>scalar</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_character.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
        <lineNumber>51</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>35aLf39A7TuUNrUR4xeVzog2h518</id>
  <extraction>regular</extraction>
  <parent>nJoSptYF9go7dPKS8BAfAUiD1bP</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A quantity with magnitude but no direction.</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enumConstant>
  <name>vector</name>
  <anchor>vector</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_character.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
        <lineNumber>52</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>2rL1MZZX3EBiZJXKqa78UmidAUez</id>
  <extraction>regular</extraction>
  <parent>nJoSptYF9go7dPKS8BAfAUiD1bP</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A quantity with both magnitude and direction.</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enumConstant>
  <name>tensor</name>
  <anchor>tensor</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_character.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
        <lineNumber>53</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>3M88EMefMHjedwjxkzQndwhdDzsJ</id>
  <extraction>regular</extraction>
  <parent>nJoSptYF9go7dPKS8BAfAUiD1bP</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A quantity that additionally carries orientation (e.g. the Cauchy stress tensor).</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enum>
  <name>unit_symbol_separator</name>
  <anchor>unit_symbol_separator</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_symbol_formatting.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_symbol_formatting.h</sourcePath>
      <lineNumber>56</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>enum</kind>
  <id>4JGzXjLwhZhRJT4Ck7pdiZGJvAtQ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specifies the separator placed between the symbols of a unit symbol&apos;s factors</literal>
        </text>
      </children>
    </brief>
  </doc>
  <scoped/>
  <underlyingType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2QrdNTAwvAgZKS48NYJmN5ZojAGy</id>
          <identifier>int8_t</identifier>
        </identifier>
      </name>
    </named>
  </underlyingType>
  <constants>2gHSouEvvFNcYxr2en5CtGq17cNG 4XfufFkoGs6TYEJknjy2VN3rJptw 445Yyx9pqWcAdutzrE49ZvjtegsG</constants>
</enum>
<enumConstant>
  <name>space</name>
  <anchor>space</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_symbol_formatting.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_symbol_formatting.h</sourcePath>
        <lineNumber>57</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>2gHSouEvvFNcYxr2en5CtGq17cNG</id>
  <extraction>regular</extraction>
  <parent>4JGzXjLwhZhRJT4Ck7pdiZGJvAtQ</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Factors are separated with a space (e.g. </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>kg m²/s²</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>)</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enumConstant>
  <name>half_high_dot</name>
  <anchor>half_high_dot</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_symbol_formatting.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_symbol_formatting.h</sourcePath>
        <lineNumber>58</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>4XfufFkoGs6TYEJknjy2VN3rJptw</id>
  <extraction>regular</extraction>
  <parent>4JGzXjLwhZhRJT4Ck7pdiZGJvAtQ</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Factors are separated with a half-high dot (e.g. </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>kg⋅m²/s²</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>); valid only for utf8 encoding</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enumConstant>
  <name>default_separator</name>
  <anchor>default_separator</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_symbol_formatting.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_symbol_formatting.h</sourcePath>
        <lineNumber>59</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>445Yyx9pqWcAdutzrE49ZvjtegsG</id>
  <extraction>regular</extraction>
  <parent>4JGzXjLwhZhRJT4Ck7pdiZGJvAtQ</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The default separator, equal to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>space</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <initializer>
    <written>space</written>
    <value>0</value>
  </initializer>
</enumConstant>
<enum>
  <name>unit_symbol_solidus</name>
  <anchor>unit_symbol_solidus</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_symbol_formatting.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_symbol_formatting.h</sourcePath>
      <lineNumber>45</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>enum</kind>
  <id>BtkpK1Lsm8NaBA7ZDNQr6mVq5Tx</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specifies how the solidus (</literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>/</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>) is used when formatting a unit symbol&apos;s denominator</literal>
        </text>
      </children>
    </brief>
  </doc>
  <scoped/>
  <underlyingType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2QrdNTAwvAgZKS48NYJmN5ZojAGy</id>
          <identifier>int8_t</identifier>
        </identifier>
      </name>
    </named>
  </underlyingType>
  <constants>3Qcxmm3BycDVVUqEdiPMrdLrVjaZ 2NP1E4ZXiuBVLfug6jkkRZZGFbmo 4MpUB795v4BXRz35xkHtRVryjGbZ 3d7p6pUj2uPMCFanuHvcwD5YeLeo</constants>
</enum>
<enumConstant>
  <name>one_denominator</name>
  <anchor>one_denominator</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_symbol_formatting.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_symbol_formatting.h</sourcePath>
        <lineNumber>46</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>3Qcxmm3BycDVVUqEdiPMrdLrVjaZ</id>
  <extraction>regular</extraction>
  <parent>BtkpK1Lsm8NaBA7ZDNQr6mVq5Tx</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A solidus is used only if there is exactly one unit in the denominator (e.g. </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>m/s</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>; </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>kg m⁻¹ s⁻¹</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>)</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enumConstant>
  <name>always</name>
  <anchor>always</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_symbol_formatting.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_symbol_formatting.h</sourcePath>
        <lineNumber>47</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>2NP1E4ZXiuBVLfug6jkkRZZGFbmo</id>
  <extraction>regular</extraction>
  <parent>BtkpK1Lsm8NaBA7ZDNQr6mVq5Tx</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A solidus is always used for a non-empty denominator (e.g. </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>m/s</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>; </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>kg/(m s)</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>)</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enumConstant>
  <name>never</name>
  <anchor>never</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_symbol_formatting.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_symbol_formatting.h</sourcePath>
        <lineNumber>48</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>4MpUB795v4BXRz35xkHtRVryjGbZ</id>
  <extraction>regular</extraction>
  <parent>BtkpK1Lsm8NaBA7ZDNQr6mVq5Tx</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A solidus is never used; negative exponents are used instead (e.g. </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>m s⁻¹</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>; </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>kg m⁻¹ s⁻¹</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>)</literal>
        </text>
      </children>
    </brief>
  </doc>
</enumConstant>
<enumConstant>
  <name>default_solidus</name>
  <anchor>default_solidus</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_symbol_formatting.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_symbol_formatting.h</sourcePath>
        <lineNumber>49</lineNumber>
        <columnNumber>3</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>enum-constant</kind>
  <id>3d7p6pUj2uPMCFanuHvcwD5YeLeo</id>
  <extraction>regular</extraction>
  <parent>BtkpK1Lsm8NaBA7ZDNQr6mVq5Tx</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The default solidus behavior, equal to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>one_denominator</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <initializer>
    <written>one_denominator</written>
    <value>0</value>
  </initializer>
</enumConstant>
<function>
  <name>abs</name>
  <anchor>abs</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>68</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>HrKEdkrfR2txpFyLov2VxsioqTN</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the absolute value of a quantity</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity The absolute value of a provided quantity</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity being the base of the operation</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>R</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires(Rep v) { abs(v); }
#if MP_UNITS_HOSTED || __cpp_lib_freestanding_cstdlib &gt;= 202306L
           || requires(Rep v) { std::abs(v); }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>absolute</name>
  <anchor>absolute</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/construction_helpers.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/construction_helpers.h</sourcePath>
      <lineNumber>65</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>34tTQidX6id7wgchZkJ2WZz4iANE</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_point</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> of reference </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>R</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a raw representation value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of reference </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>R</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, relative to the default point origin, holding </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The raw representation value to wrap in a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point</literal>
              </text>
            </children>
          </code>
        </children>
        <name>lhs</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity_point</literal>
        <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
          <identifier>quantity_point</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>R{}</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>default_point_origin(R{})</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdRep</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>lhs</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
                <identifier>Reference</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <functionObjectImpl>2PksRvMJZhCxhDF9TqFckTUnAVKW</functionObjectImpl>
</function>
<function>
  <name>castable</name>
  <anchor>castable</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_conversion.h</sourcePath>
      <lineNumber>59</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>26MLjFzGTFbUMz64BXoNSXCCriir</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>castable</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is a weaker requirement than </literal>
          </text>
          <reference>
            <kind>reference</kind>
            <literal>explicitly_convertible</literal>
            <id>2FN1w8efFDmehLaRQtnnCrukc3ve</id>
          </reference>
          <text>
            <kind>text</kind>
            <literal> and is used to validate quantities belonging to the same kind but with otherwise unrelated equations.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether a quantity of quantity spec </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>From</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> can be cast to quantity spec </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>To</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>from</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> can be cast to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>source quantity specification value</literal>
          </text>
        </children>
        <name>from</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>target quantity specification value</literal>
          </text>
        </children>
        <name>to</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>source quantity specification type</literal>
          </text>
        </children>
        <name>From</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>target quantity specification type</literal>
          </text>
        </children>
        <name>To</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>From</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>from</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>To</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>to</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>From</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
            <identifier>QuantitySpec</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>To</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
            <identifier>QuantitySpec</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<overloads>
  <name>cbrt</name>
  <anchor>cbrt-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>252</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2eCs8hXphxyzxgQz2GcLDiDd8LyK</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>cbrt</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The result of computation</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity The result of computation</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Reference being the base of the operation</literal>
          </text>
        </children>
        <name>r</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity being the base of the operation</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>4Kk7daZVJfRtgL3J6mEgFu8HneWn JZExYYbKddEZ9SQUoddT6PG1rCV</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>cbrt</name>
  <anchor>cbrt-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>252</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4Kk7daZVJfRtgL3J6mEgFu8HneWn</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the cubic root of a reference</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The result of computation</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Reference being the base of the operation</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>41shz9r5JUEt8JdP4cmahP2ZeN9m</id>
          <identifier>reference_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
              <identifier>detail</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>cbrt(Q{})</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>cbrt(U{})</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>cbrt</name>
  <anchor>cbrt-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>146</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>JZExYYbKddEZ9SQUoddT6PG1rCV</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Both the quantity value and its quantity specification are the base of the operation.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the cubic root of a quantity</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity The result of computation</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity being the base of the operation</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>cbrt(R)</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires(Rep v) { cbrt(v); }
#if MP_UNITS_HOSTED
           || requires(Rep v) { std::cbrt(v); }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<overloads>
  <name>ceil</name>
  <anchor>ceil-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>476</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>384Fo8ySDfoudMQx2Hvk4djF3Uaj</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>ceil</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity The rounded quantity with unit type To</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>QuantityPoint The rounded quantity with unit type To</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity being the base of the operation</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity point being the base of the operation</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>2D9wrMo7Hi5v9CpzH8BGVMvfqgR9 4CLKudXxT1sBgxwAzSUJuCMepXtL</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>ceil</name>
  <anchor>ceil-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>476</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2D9wrMo7Hi5v9CpzH8BGVMvfqgR9</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the smallest quantity with integer representation and unit type To with its number not less than q</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity The rounded quantity with unit type To</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity being the base of the operation</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>detail::clone_reference_with&lt;To&gt;(R)</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>To</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <requires>requires { q.in(To, truncated); } &amp;&amp;
           ((treat_as_floating_point&lt;Rep&gt; &amp;&amp; (requires(Rep v) { ceil(v); }
#if MP_UNITS_HOSTED
                                              || requires(Rep v) { std::ceil(v); }
#endif
                                              )) ||
            (!treat_as_floating_point&lt;Rep&gt; &amp;&amp; requires { representation_values&lt;Rep&gt;::one(); }))</requires>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>ceil</name>
  <anchor>ceil-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>505</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4CLKudXxT1sBgxwAzSUJuCMepXtL</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the smallest quantity point with integer representation and unit type To with its number not less than qp</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>QuantityPoint The rounded quantity with unit type To</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity point being the base of the operation</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity_point</literal>
        <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_point&lt;R, PO, Rep&gt;::quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>PO</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>qp</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>To</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>PO</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <requires>requires { qp.in(To, truncated); } &amp;&amp;
           ((treat_as_floating_point&lt;Rep&gt; &amp;&amp; (requires(Rep v) { ceil(v); }
#if MP_UNITS_HOSTED
                                              || requires(Rep v) { std::ceil(v); }
#endif
                                              )) ||
            (!treat_as_floating_point&lt;Rep&gt; &amp;&amp; requires { representation_values&lt;Rep&gt;::one(); }))</requires>
  <constexpr>constexpr</constexpr>
</function>
<overloads>
  <name>contains</name>
  <anchor>contains-01b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>141</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>PFjcwUXVHzQMT9JijgUJxoQ4KFt</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>contains</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> matches the type of at least one of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Vs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if at least one of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Ts</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is a specialization of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is the same as </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T1</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> or one of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Ts</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The type to look for among the types of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Vs</literal>
              </text>
            </children>
          </code>
        </children>
        <name>T</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The non-type template arguments whose types are checked against </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
        </children>
        <name>Vs</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The types to check</literal>
          </text>
        </children>
        <name>Ts</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The first type of the pack to search</literal>
          </text>
        </children>
        <name>T1</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>3nsiqVWfNKDk73JSsRQ91u4xVvd7 RdNRTSM99NuyfS9o6ZmpSoSm4WA 3hMLuY2C9CEBWpyvXoQZMR5Z5wGf 3eUkPhWZiyoE8aapmkgWb5cX75GS</members>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
</overloads>
<function>
  <name>contains</name>
  <anchor>contains-0c8</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>141</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3nsiqVWfNKDk73JSsRQ91u4xVvd7</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether the type </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> matches the type of any of the non-type template arguments </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Vs</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> matches the type of at least one of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Vs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The type to look for among the types of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Vs</literal>
              </text>
            </children>
          </code>
        </children>
        <name>T</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The non-type template arguments whose types are checked against </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
        </children>
        <name>Vs</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>Vs</name>
        <isParameterPack/>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>contains</name>
  <anchor>contains-01e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>170</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>RdNRTSM99NuyfS9o6ZmpSoSm4WA</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether any of the types </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Ts</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is a specialization of the class template </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if at least one of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Ts</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is a specialization of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The class template (taking type parameters) to look for</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The types to check</literal>
          </text>
        </children>
        <name>Ts</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <template>
    <params>
      <template>
        <kind>template</kind>
        <name>T</name>
        <params>
          <type>
            <kind>type</kind>
            <isParameterPack/>
            <keyKind>typename</keyKind>
          </type>
        </params>
      </template>
      <type>
        <kind>type</kind>
        <name>Ts</name>
        <isParameterPack/>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>contains</name>
  <anchor>contains-0c1</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>183</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3hMLuY2C9CEBWpyvXoQZMR5Z5wGf</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether any of the types </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Ts</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is a specialization of the class template </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if at least one of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Ts</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is a specialization of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The class template (taking non-type, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>auto</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, parameters) to look for</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The types to check</literal>
          </text>
        </children>
        <name>Ts</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <template>
    <params>
      <template>
        <kind>template</kind>
        <name>T</name>
        <params>
          <constant>
            <kind>constant</kind>
            <isParameterPack/>
            <type>
              <auto>
                <kind>auto</kind>
                <keyword>auto</keyword>
              </auto>
            </type>
          </constant>
        </params>
      </template>
      <type>
        <kind>type</kind>
        <name>Ts</name>
        <isParameterPack/>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>contains</name>
  <anchor>contains-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>157</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3eUkPhWZiyoE8aapmkgWb5cX75GS</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether the type </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is present in the type pack </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T1, Ts...</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is the same as </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T1</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> or one of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Ts</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The type to look for</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The first type of the pack to search</literal>
          </text>
        </children>
        <name>T1</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The remaining types of the pack to search</literal>
          </text>
        </children>
        <name>Ts</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>T1</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Ts</name>
        <isParameterPack/>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>default_point_origin</name>
  <anchor>default_point_origin</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>300</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4NQEgxsg87PaCnHkxkHiEKzTi7sn</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>If the reference&apos;s unit defines its own point origin, that origin is returned. Otherwise, the natural point origin of the reference&apos;s quantity specification is used.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the default point origin for a reference</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the default point origin associated with </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>R</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>reference instance for which the default point origin is requested</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>reference type for which the default point origin is requested</literal>
          </text>
        </children>
        <name>R</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>2aXKW9wnyinkHgp4PdNJx1dVcXRf</id>
          <identifier>PointOriginFor</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>get_quantity_spec(R{})</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>R</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>R</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>delta</name>
  <anchor>delta</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/construction_helpers.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/construction_helpers.h</sourcePath>
      <lineNumber>49</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>21ee1NG4LHf7vYX1LRzekigZmA5F</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> of reference </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>R</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a raw representation value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of reference </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>R</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> holding </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The raw representation value to wrap in a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity</literal>
              </text>
            </children>
          </code>
        </children>
        <name>lhs</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>R{}</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdRep</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>lhs</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
                <identifier>Reference</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <functionObjectImpl>DUmhPswjMzqGF1ZTL1bMXZ94fcg</functionObjectImpl>
</function>
<function>
  <name>dimension_symbol</name>
  <anchor>dimension_symbol</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>334</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>387eL9wD7fqA1x7VuAXCjwGU9fn2</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the textual symbol of a dimension as a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::basic_string_view</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a view of the dimension&apos;s symbol</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the dimension to render</literal>
          </text>
        </children>
        <name>d</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the formatting options to use</literal>
          </text>
        </children>
        <name>fmt</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the character type of the returned symbol</literal>
          </text>
        </children>
        <name>CharT</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>479DxynkjrswieANT6sUuL6v9vKo</id>
          <identifier>basic_string_view</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>D</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>d</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>fmt</name>
        <default>
          <constant>
            <kind>constant</kind>
            <value>dimension_symbol_formatting{}</value>
          </constant>
        </default>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>T4Fpb4JMnAKkmBrSSeJvUg59YBc</id>
                <identifier>dimension_symbol_formatting</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>CharT</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <identifier>char</identifier>
                  </identifier>
                </name>
                <fundamentalType>char</fundamentalType>
              </named>
            </type>
          </type>
        </default>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>D</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
            <identifier>Dimension</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>dimension_symbol_to</name>
  <anchor>dimension_symbol_to</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>300</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2kznZSR8SE42zHR3WTAdNWLskyVm</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Writes the textual symbol of a dimension to an output iterator.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an iterator past the last written character</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the output iterator to write to</literal>
          </text>
        </children>
        <name>out</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the dimension to render</literal>
          </text>
        </children>
        <name>d</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the formatting options to use</literal>
          </text>
        </children>
        <name>fmt</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the character type of the output symbol</literal>
          </text>
        </children>
        <name>CharT</name>
      </tParam>
    </tparams>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Out</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Out</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>out</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>D</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>d</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <id>T4Fpb4JMnAKkmBrSSeJvUg59YBc</id>
                  <identifier>dimension_symbol_formatting</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>fmt</name>
      <default>dimension_symbol_formatting{}</default>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>CharT</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <identifier>char</identifier>
                  </identifier>
                </name>
                <fundamentalType>char</fundamentalType>
              </named>
            </type>
          </type>
        </default>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Out</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>3iwafw1kmJffSaNg5VLe1fALFenr</id>
            <identifier>output_iterator</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                <identifier>std</identifier>
              </identifier>
            </prefix>
            <templateArgs>
              <type>
                <kind>type</kind>
                <type>
                  <named>
                    <kind>named</kind>
                    <name>
                      <identifier>
                        <kind>identifier</kind>
                        <identifier>CharT</identifier>
                      </identifier>
                    </name>
                  </named>
                </type>
              </type>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>D</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
            <identifier>Dimension</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>epsilon</name>
  <anchor>epsilon</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>401</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2tdZ1AAwiKTs8KPywV3pUvmUD5sG</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The returned value is defined by a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>std::numeric_limits&lt;typename Q::rep&gt;::epsilon()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the epsilon of the quantity</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity The epsilon value for quantity&apos;s representation type</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference (unit and quantity spec) to compute the epsilon for</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity type being the base of the operation</literal>
          </text>
        </children>
        <name>Q</name>
      </tParam>
    </tparams>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.5.0: Use `std::numeric_limits&lt;Quantity&gt;::epsilon()` instead&quot;</string>
      </balancedTokens>
      <message>2.5.0: Use `std::numeric_limits&lt;Quantity&gt;::epsilon()` instead</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>R{}</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>R</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>R</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>RepresentationOf&lt;Rep, get_quantity_spec(R{})&gt; &amp;&amp; requires { std::numeric_limits&lt;Rep&gt;::epsilon(); }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>exp</name>
  <anchor>exp</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>167</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>rM4PrJXjpBDLm6fsu6BMfmwMbYC</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Such an operation has sense only for a dimensionless quantity.</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes Euler&apos;s raised to the given power</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity The value of the same quantity type</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity being the base of the operation</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>R</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <specialization>
                <kind>specialization</kind>
                <id>3Ub6ZdGyQn9xo7UbcSDY6L76yn98</id>
                <identifier>ReferenceOf</identifier>
                <templateArgs>
                  <constant>
                    <kind>constant</kind>
                    <value>dimensionless</value>
                  </constant>
                </templateArgs>
              </specialization>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires(Rep v) { exp(v); }
#if MP_UNITS_HOSTED
           || requires(Rep v) { std::exp(v); }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>explicitly_convertible</name>
  <anchor>explicitly_convertible</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_conversion.h</sourcePath>
      <lineNumber>41</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_concepts.h</sourcePath>
        <lineNumber>116</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
      <location>
        <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
        <lineNumber>67</lineNumber>
        <columnNumber>17</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>function</kind>
  <id>2FN1w8efFDmehLaRQtnnCrukc3ve</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether a quantity of quantity spec </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>From</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> can be explicitly converted to quantity spec </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>To</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>from</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is explicitly convertible to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>source quantity specification value</literal>
          </text>
        </children>
        <name>from</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>target quantity specification value</literal>
          </text>
        </children>
        <name>to</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>source quantity specification type</literal>
          </text>
        </children>
        <name>From</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>target quantity specification type</literal>
          </text>
        </children>
        <name>To</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>From</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>from</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>To</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>to</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>From</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
            <identifier>QuantitySpec</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>To</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
            <identifier>QuantitySpec</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<overloads>
  <name>floor</name>
  <anchor>floor-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>416</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>25U8B459vngPxFgr5MDJ2PqGz1YV</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>floor</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity The rounded quantity with unit type To</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>QuantityPoint The rounded quantity point with unit type To</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity being the base of the operation</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>QuantityPoint being the base of the operation</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>3BLiGn6XC9JZ6bfCxp9S76oJPU8F 4YFJahKF7fHiKfQq2HLuQv1Eyz32</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>floor</name>
  <anchor>floor-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>416</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3BLiGn6XC9JZ6bfCxp9S76oJPU8F</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the largest quantity with integer representation and unit type To with its number not greater than q</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity The rounded quantity with unit type To</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity being the base of the operation</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>detail::clone_reference_with&lt;To&gt;(R)</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>To</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <requires>requires { q.in(To, truncated); } &amp;&amp;
           ((treat_as_floating_point&lt;Rep&gt; &amp;&amp; (requires(Rep v) { floor(v); }
#if MP_UNITS_HOSTED
                                              || requires(Rep v) { std::floor(v); }
#endif
                                              )) ||
            (!treat_as_floating_point&lt;Rep&gt; &amp;&amp; requires { representation_values&lt;Rep&gt;::one(); }))</requires>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>floor</name>
  <anchor>floor-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>445</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4YFJahKF7fHiKfQq2HLuQv1Eyz32</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the largest quantity point with integer representation and unit type To with its number not greater than qp</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>QuantityPoint The rounded quantity point with unit type To</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>QuantityPoint being the base of the operation</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity_point</literal>
        <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_point&lt;R, PO, Rep&gt;::quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>PO</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>qp</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>To</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>PO</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <requires>requires { qp.in(To, truncated); } &amp;&amp;
           ((treat_as_floating_point&lt;Rep&gt; &amp;&amp; (requires(Rep v) { floor(v); }
#if MP_UNITS_HOSTED
                                              || requires(Rep v) { std::floor(v); }
#endif
                                              )) ||
            (!treat_as_floating_point&lt;Rep&gt; &amp;&amp; requires { representation_values&lt;Rep&gt;::one(); }))</requires>
  <constexpr>constexpr</constexpr>
</function>
<overloads>
  <name>fma</name>
  <anchor>fma-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>287</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>3hAvk6tbnywrx6RrVXuU7NT8aeo6</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>fma</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity: The nearest floating point representable to ax+b</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>QuantityPoint: The nearest floating point representable to ax+b</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Multiplicand</literal>
          </text>
        </children>
        <name>a</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Multiplicand</literal>
          </text>
        </children>
        <name>x</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Addend</literal>
          </text>
        </children>
        <name>b</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>2N3SGXNEYGQSWnfrTbYdsbJK5j5c 3xHDYPQbGL2nxMkCPESiLrSPLGNk</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>fma</name>
  <anchor>fma-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>287</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2N3SGXNEYGQSWnfrTbYdsbJK5j5c</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the fma of 3 quantities</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity: The nearest floating point representable to ax+b</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Multiplicand</literal>
          </text>
        </children>
        <name>a</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Multiplicand</literal>
          </text>
        </children>
        <name>x</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Addend</literal>
          </text>
        </children>
        <name>b</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>get_common_quantity_spec(get_quantity_spec(R) * get_quantity_spec(S), get_quantity_spec(T))</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>a</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>S</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>x</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>T</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep3</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>b</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>S</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>T</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep1</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Rep2</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Rep3</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires { get_common_quantity_spec(get_quantity_spec(R) * get_quantity_spec(S), get_quantity_spec(T)); } &amp;&amp;
           (equivalent(get_unit(R) * get_unit(S), get_unit(T))) &amp;&amp; requires(Rep1 v1, Rep2 v2, Rep3 v3) {
             requires requires { fma(v1, v2, v3); }
#if MP_UNITS_HOSTED
                        || requires { std::fma(v1, v2, v3); }
#endif
                        ;
           }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>fma</name>
  <anchor>fma-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>316</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3xHDYPQbGL2nxMkCPESiLrSPLGNk</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the fma of 2 quantities and a quantity point</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>QuantityPoint: The nearest floating point representable to ax+b</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Multiplicand</literal>
          </text>
        </children>
        <name>a</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Multiplicand</literal>
          </text>
        </children>
        <name>x</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Addend</literal>
          </text>
        </children>
        <name>b</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>get_common_quantity_spec(get_quantity_spec(R) * get_quantity_spec(S), get_quantity_spec(T))</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>a</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>S</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>x</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>T</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>Origin</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep3</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>b</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>S</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>T</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>Origin</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep1</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Rep2</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Rep3</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires { get_common_quantity_spec(get_quantity_spec(R) * get_quantity_spec(S), get_quantity_spec(T)); } &amp;&amp;
           (equivalent(get_unit(R) * get_unit(S), get_unit(T))) &amp;&amp; requires(Rep1 v1, Rep2 v2, Rep3 v3) {
             requires requires { fma(v1, v2, v3); }
#if MP_UNITS_HOSTED
                        || requires { std::fma(v1, v2, v3); }
#endif
                        ;
           }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>fmod</name>
  <anchor>fmod</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>344</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2mVQGbDNbwfBKeP9T4UQjYAekR4Z</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the floating-point remainder of the division operation x / y.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the floating-point remainder of x / y, in the common reference of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>x</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>y</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the dividend quantity</literal>
          </text>
        </children>
        <name>x</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the divisor quantity</literal>
          </text>
        </children>
        <name>y</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>get_quantity_spec(R1)</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>x</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>y</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R1</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep1</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>R2</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep2</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires(Rep1 v1, Rep2 v2) {
    get_common_reference(R1, R2);
    requires requires { fmod(v1, v2); }
#if MP_UNITS_HOSTED
               || requires { std::fmod(v1, v2); }
#endif
               ;
  }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<overloads>
  <name>get</name>
  <anchor>get-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>196</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>3Ms5NC3kKDoRzwtiNxtVcWrZAzXm</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>get</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>V</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A default-constructed instance of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T1</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The value of the first argument whose type matches </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A default-constructed instance of the first matching type</literal>
          </text>
        </children>
      </returns>
    </returns>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The type that </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>V</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> must have</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The non-type template argument to return</literal>
          </text>
        </children>
        <name>V</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The type to return, required to be a specialization of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
        </children>
        <name>T1</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The first non-type template argument to check</literal>
          </text>
        </children>
        <name>V1</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The second non-type template argument to check</literal>
          </text>
        </children>
        <name>V2</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The remaining non-type template arguments to check</literal>
          </text>
        </children>
        <name>Vs</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The second type to check</literal>
          </text>
        </children>
        <name>T2</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The remaining types to check</literal>
          </text>
        </children>
        <name>Ts</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>oJvrM7fF5vTDJJPX4ccZVzmG1Vh WNGRnsnJTrmEiACjSeiCoEVrtyy 3BJjhFooXzULmJSnUp3PDevntq65 2eNwLBucY2PL3waVtTtm5zXoRyaP rdwS8DtfGgS4yCEGQmNdqmToi6W 2GxrgL6S1CPAAiQ1AtdiniQsUVPw</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>get</name>
  <anchor>get-039</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>196</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>oJvrM7fF5vTDJJPX4ccZVzmG1Vh</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the non-type template argument </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>V</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, whose type is </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>V</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The type that </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>V</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> must have</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The non-type template argument to return</literal>
          </text>
        </children>
        <name>V</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>V</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <specialization>
                <kind>specialization</kind>
                <id>Vne1BHMmcm9Rg1T7td1j6LZ65hv</id>
                <identifier>same_as</identifier>
                <templateArgs>
                  <type>
                    <kind>type</kind>
                    <type>
                      <named>
                        <kind>named</kind>
                        <name>
                          <identifier>
                            <kind>identifier</kind>
                            <identifier>T</identifier>
                          </identifier>
                        </name>
                      </named>
                    </type>
                  </type>
                </templateArgs>
              </specialization>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get</name>
  <anchor>get-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>227</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>WNGRnsnJTrmEiACjSeiCoEVrtyy</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns a default-constructed instance of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T1</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, given it is a specialization of the class template </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A default-constructed instance of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T1</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The class template (taking type parameters) that </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T1</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> must specialize</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The type to return, required to be a specialization of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
        </children>
        <name>T1</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <template>
    <params>
      <template>
        <kind>template</kind>
        <name>T</name>
        <params>
          <type>
            <kind>type</kind>
            <isParameterPack/>
            <keyKind>typename</keyKind>
          </type>
        </params>
      </template>
      <type>
        <kind>type</kind>
        <name>T1</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>is_specialization_of&lt;T1, T&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get</name>
  <anchor>get-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>259</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3BJjhFooXzULmJSnUp3PDevntq65</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns a default-constructed instance of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T1</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, given it is a specialization of the class template </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A default-constructed instance of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T1</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The class template (taking non-type, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>auto</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, parameters) that </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T1</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> must specialize</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The type to return, required to be a specialization of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
        </children>
        <name>T1</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <template>
    <params>
      <template>
        <kind>template</kind>
        <name>T</name>
        <params>
          <constant>
            <kind>constant</kind>
            <isParameterPack/>
            <type>
              <auto>
                <kind>auto</kind>
                <keyword>auto</keyword>
              </auto>
            </type>
          </constant>
        </params>
      </template>
      <type>
        <kind>type</kind>
        <name>T1</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>is_specialization_of_v&lt;T1, T&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get</name>
  <anchor>get-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>211</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2eNwLBucY2PL3waVtTtm5zXoRyaP</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the first of the non-type template arguments </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>V1, V2, Vs...</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> whose type matches </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The value of the first argument whose type matches </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The type to look for among the types of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>V1, V2, Vs...</literal>
              </text>
            </children>
          </code>
        </children>
        <name>T</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The first non-type template argument to check</literal>
          </text>
        </children>
        <name>V1</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The second non-type template argument to check</literal>
          </text>
        </children>
        <name>V2</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The remaining non-type template arguments to check</literal>
          </text>
        </children>
        <name>Vs</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>V1</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>V2</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>Vs</name>
        <isParameterPack/>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get</name>
  <anchor>get-03d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>243</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>rdwS8DtfGgS4yCEGQmNdqmToi6W</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns a default-constructed instance of the first of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T1, T2, Ts...</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> that is a specialization of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A default-constructed instance of the first matching type</literal>
          </text>
        </children>
      </returns>
    </returns>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The class template (taking type parameters) to look for</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The first type to check</literal>
          </text>
        </children>
        <name>T1</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The second type to check</literal>
          </text>
        </children>
        <name>T2</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The remaining types to check</literal>
          </text>
        </children>
        <name>Ts</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <template>
    <params>
      <template>
        <kind>template</kind>
        <name>T</name>
        <params>
          <type>
            <kind>type</kind>
            <isParameterPack/>
            <keyKind>typename</keyKind>
          </type>
        </params>
      </template>
      <type>
        <kind>type</kind>
        <name>T1</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>T2</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Ts</name>
        <isParameterPack/>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get</name>
  <anchor>get-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>275</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2GxrgL6S1CPAAiQ1AtdiniQsUVPw</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns a default-constructed instance of the first of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T1, T2, Ts...</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> that is a specialization of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A default-constructed instance of the first matching type</literal>
          </text>
        </children>
      </returns>
    </returns>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The class template (taking non-type, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>auto</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, parameters) to look for</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The first type to check</literal>
          </text>
        </children>
        <name>T1</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The second type to check</literal>
          </text>
        </children>
        <name>T2</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The remaining types to check</literal>
          </text>
        </children>
        <name>Ts</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <template>
    <params>
      <template>
        <kind>template</kind>
        <name>T</name>
        <params>
          <constant>
            <kind>constant</kind>
            <isParameterPack/>
            <type>
              <auto>
                <kind>auto</kind>
                <keyword>auto</keyword>
              </auto>
            </type>
          </constant>
        </params>
      </template>
      <type>
        <kind>type</kind>
        <name>T1</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>T2</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Ts</name>
        <isParameterPack/>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_canonical_unit</name>
  <anchor>get_canonical_unit</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>149</lineNumber>
      <columnNumber>31</columnNumber>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_concepts.h</sourcePath>
        <lineNumber>85</lineNumber>
        <columnNumber>31</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>function</kind>
  <id>qqfEkb5D6zvPRLQGQS6YHKPjpNj</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The canonical form reduces a unit to its reference unit expressed only in terms of base units together with the unit magnitude needed to reach it, so that units can be compared for compatibility and converted between each other.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the canonical form of a unit</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the canonical form of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>unit to compute the canonical form of</literal>
          </text>
        </children>
        <name>u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<overloads>
  <name>get_common_quantity_spec</name>
  <anchor>get_common_quantity_spec-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_conversion.h</sourcePath>
      <lineNumber>114</lineNumber>
      <columnNumber>15</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2wbGUGn7UfY93CpPnomG6ADssMHm</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>get_common_quantity_spec</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>q</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> unchanged</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the strongest quantity specification that both arguments are convertible to</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the common quantity specification obtained by folding all arguments pairwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a quantity specification value</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first quantity specification value</literal>
          </text>
        </children>
        <name>q1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second quantity specification value</literal>
          </text>
        </children>
        <name>q2</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>third quantity specification value</literal>
          </text>
        </children>
        <name>q3</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>any remaining quantity specification values</literal>
          </text>
        </children>
        <name>rest</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first quantity specification type</literal>
          </text>
        </children>
        <name>Q1</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second quantity specification type</literal>
          </text>
        </children>
        <name>Q2</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>27M1tmahUHxt2xkUHqjvvt6ggAgg 3dPm3u7Q4UBsEAnovKt1B75sUR9K 3GPjvQBzye6WdQpxmHLz13CLcuyj</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
          <identifier>QuantitySpec</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
</overloads>
<function>
  <name>get_common_quantity_spec</name>
  <anchor>get_common_quantity_spec-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_conversion.h</sourcePath>
      <lineNumber>114</lineNumber>
      <columnNumber>15</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>27M1tmahUHxt2xkUHqjvvt6ggAgg</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the common quantity specification of a single quantity specification</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>q</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> unchanged</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a quantity specification value</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
          <identifier>QuantitySpec</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>q</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_common_quantity_spec</name>
  <anchor>get_common_quantity_spec-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_conversion.h</sourcePath>
      <lineNumber>125</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3dPm3u7Q4UBsEAnovKt1B75sUR9K</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the common quantity specification of two quantity specifications</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the strongest quantity specification that both arguments are convertible to</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first quantity specification value</literal>
          </text>
        </children>
        <name>q1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second quantity specification value</literal>
          </text>
        </children>
        <name>q2</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first quantity specification type</literal>
          </text>
        </children>
        <name>Q1</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second quantity specification type</literal>
          </text>
        </children>
        <name>Q2</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
          <identifier>QuantitySpec</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Q1</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>q1</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Q2</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>q2</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q1</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
            <identifier>QuantitySpec</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Q2</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
            <identifier>QuantitySpec</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(detail::have_common_quantity_spec(Q1{}, Q2{}))</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_common_quantity_spec</name>
  <anchor>get_common_quantity_spec-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_conversion.h</sourcePath>
      <lineNumber>141</lineNumber>
      <columnNumber>15</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3GPjvQBzye6WdQpxmHLz13CLcuyj</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the common quantity specification of three or more quantity specifications</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the common quantity specification obtained by folding all arguments pairwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first quantity specification value</literal>
          </text>
        </children>
        <name>q1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second quantity specification value</literal>
          </text>
        </children>
        <name>q2</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>third quantity specification value</literal>
          </text>
        </children>
        <name>q3</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>any remaining quantity specification values</literal>
          </text>
        </children>
        <name>rest</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
          <identifier>QuantitySpec</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>q1</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>q2</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>q3</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <isPackExpansion/>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rest</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { mp_units::get_common_quantity_spec(mp_units::get_common_quantity_spec(q1, q2), q3, rest...); }</requires>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_common_reference</name>
  <anchor>get_common_reference</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>411</lineNumber>
      <columnNumber>15</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>26kyM8uKrZcfcRZkWpzTy7AvfGVS</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the common unit of two or more units usable as a reference</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the common unit of all the arguments</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first unit</literal>
          </text>
        </children>
        <name>u1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second unit</literal>
          </text>
        </children>
        <name>u2</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>any remaining units</literal>
          </text>
        </children>
        <name>rest</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
          <identifier>Reference</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u1</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u2</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <isPackExpansion/>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rest</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>R1</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>R2</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Rest</name>
        <isParameterPack/>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <requires>(!(Unit&lt;R1&gt; &amp;&amp; Unit&lt;R2&gt; &amp;&amp; (... &amp;&amp; Unit&lt;Rest&gt;))) &amp;&amp; requires {
    mp_units::get_common_quantity_spec(get_quantity_spec(r1), get_quantity_spec(r2), get_quantity_spec(rest)...);
    mp_units::get_common_unit(get_unit(r1), get_unit(r2), get_unit(rest)...);
  }</requires>
  <constexpr>consteval</constexpr>
</function>
<overloads>
  <name>get_common_unit</name>
  <anchor>get_common_unit-08f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>64</lineNumber>
      <columnNumber>15</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/reference.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
        <lineNumber>398</lineNumber>
        <columnNumber>15</columnNumber>
      </location>
      <location>
        <shortPath>mp-units/framework/reference.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
        <lineNumber>400</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>overloads</kind>
  <id>31CkXCQbx9LGdX3PNf8RbtSLm7Rx</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>get_common_unit</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> unchanged</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the common unit obtained by merging </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>nu</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> into </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>cu&apos;s</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> unit list</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the common unit of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u1</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u2</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the common unit obtained by merging the new unit into the compound&apos;s unit list</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the common unit obtained by merging the unit lists of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>cu1</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>cu2</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the common unit obtained by folding </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>get_common_unit</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> over </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u1,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u2,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u3,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rest</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the unit</literal>
          </text>
        </children>
        <name>u</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the single unit</literal>
          </text>
        </children>
        <name>nu</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>common_unit</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> compound</literal>
          </text>
        </children>
        <name>cu</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first unit</literal>
          </text>
        </children>
        <name>u1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second unit</literal>
          </text>
        </children>
        <name>u2</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the new unit to merge into the compound&apos;s unit list</literal>
          </text>
        </children>
        <name>new_unit</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>common_unit</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> compound</literal>
          </text>
        </children>
        <name>cu1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>common_unit</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> compound</literal>
          </text>
        </children>
        <name>cu2</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>third unit</literal>
          </text>
        </children>
        <name>u3</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>remaining units, if any</literal>
          </text>
        </children>
        <name>rest</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>4JV8y8ki9Bfp3UTHdYpdHTefU33s 2xns8LxDwLjbvJQXQEgG26sWWMxY 3wsfbc87boyNAhKpzns6rUpqCHQC 2yYD6QaUgSGQR3bCeEuMVoXcUU4e 37jnG4rkY9ir5LkRu91mZ18vbQUc Zw74qY81vsfXYxtjSUtCTyiwjEP</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
          <identifier>Unit</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
</overloads>
<function>
  <name>get_common_unit</name>
  <anchor>get_common_unit-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>64</lineNumber>
      <columnNumber>15</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/reference.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
        <lineNumber>398</lineNumber>
        <columnNumber>15</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>function</kind>
  <id>4JV8y8ki9Bfp3UTHdYpdHTefU33s</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the common unit of a single unit</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> unchanged</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the unit</literal>
          </text>
        </children>
        <name>u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
          <identifier>Unit</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_common_unit</name>
  <anchor>get_common_unit-08c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>103</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2xns8LxDwLjbvJQXQEgG26sWWMxY</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the common unit of a single new unit and a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>common_unit</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> compound</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the common unit obtained by merging </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>nu</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> into </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>cu&apos;s</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> unit list</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the single unit</literal>
          </text>
        </children>
        <name>nu</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>common_unit</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> compound</literal>
          </text>
        </children>
        <name>cu</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
          <identifier>Unit</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>NewUnit</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>nu</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>Wzysgh1aqMdibSoHMsoDoeCtyG9</id>
              <identifier>common_unit</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <isPackExpansion/>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Us</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>cu</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Us</name>
        <isParameterPack/>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>NewUnit</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>3CV2aCuH5nCEcXeabvoGZWZAv2Cu</id>
            <identifier>UnitConvertibleTo</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>common_unit&lt;Us...&gt;{}</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_common_unit</name>
  <anchor>get_common_unit-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>73</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/reference.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
        <lineNumber>400</lineNumber>
        <columnNumber>1</columnNumber>
      </location>
    </loc>
  </loc>
  <kind>function</kind>
  <id>3wsfbc87boyNAhKpzns6rUpqCHQC</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the common unit of two convertible units</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the common unit of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u1</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u2</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first unit</literal>
          </text>
        </children>
        <name>u1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second unit</literal>
          </text>
        </children>
        <name>u2</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
          <identifier>Unit</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U1</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u1</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U2</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u2</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U1</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>U2</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>3CV2aCuH5nCEcXeabvoGZWZAv2Cu</id>
            <identifier>UnitConvertibleTo</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>U1{}</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_common_unit</name>
  <anchor>get_common_unit-08d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>86</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2yYD6QaUgSGQR3bCeEuMVoXcUU4e</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the common unit of a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>common_unit</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> compound and a single new unit</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the common unit obtained by merging the new unit into the compound&apos;s unit list</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>common_unit</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> compound</literal>
          </text>
        </children>
        <name>cu</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the new unit to merge into the compound&apos;s unit list</literal>
          </text>
        </children>
        <name>new_unit</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>common_unit</literal>
        <id>Wzysgh1aqMdibSoHMsoDoeCtyG9</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
          <identifier>Unit</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>Wzysgh1aqMdibSoHMsoDoeCtyG9</id>
              <identifier>common_unit</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <isPackExpansion/>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Us</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>cu</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>NewUnit</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>new_unit</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Us</name>
        <isParameterPack/>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>NewUnit</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>3CV2aCuH5nCEcXeabvoGZWZAv2Cu</id>
            <identifier>UnitConvertibleTo</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>common_unit&lt;Us...&gt;{}</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_common_unit</name>
  <anchor>get_common_unit-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>116</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>37jnG4rkY9ir5LkRu91mZ18vbQUc</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the common unit of two </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>common_unit</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> compounds by merging their unit lists</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the common unit obtained by merging the unit lists of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>cu1</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>cu2</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>common_unit</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> compound</literal>
          </text>
        </children>
        <name>cu1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>common_unit</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> compound</literal>
          </text>
        </children>
        <name>cu2</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>common_unit</literal>
        <id>Wzysgh1aqMdibSoHMsoDoeCtyG9</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
          <identifier>Unit</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>Wzysgh1aqMdibSoHMsoDoeCtyG9</id>
              <identifier>common_unit</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Front</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <isPackExpansion/>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Rest</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>cu1</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>Wzysgh1aqMdibSoHMsoDoeCtyG9</id>
              <identifier>common_unit</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <isPackExpansion/>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Us</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>cu2</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Front</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Rest</name>
        <isParameterPack/>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Us</name>
        <isParameterPack/>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(detail::UnitConvertibleTo&lt;common_unit&lt;Front, Rest...&gt;, common_unit&lt;Us...&gt;{}&gt;)</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_common_unit</name>
  <anchor>get_common_unit-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>135</lineNumber>
      <columnNumber>15</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>Zw74qY81vsfXYxtjSUtCTyiwjEP</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the common unit of three or more units</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the common unit obtained by folding </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>get_common_unit</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> over </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u1,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u2,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u3,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rest</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first unit</literal>
          </text>
        </children>
        <name>u1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second unit</literal>
          </text>
        </children>
        <name>u2</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>third unit</literal>
          </text>
        </children>
        <name>u3</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>remaining units, if any</literal>
          </text>
        </children>
        <name>rest</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
          <identifier>Unit</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u1</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u2</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u3</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <isPackExpansion/>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rest</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>requires { mp_units::get_common_unit(mp_units::get_common_unit(u1, u2), u3, rest...); }</requires>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_kind</name>
  <anchor>get_kind</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_conversion.h</sourcePath>
      <lineNumber>89</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3UrFqLKZpsEZm623Z2qtPRDuVms8</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The kind is obtained by walking up to the root of the quantity&apos;s hierarchy tree.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the kind of a quantity specification</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity kind of the argument</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity specification value</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity specification type</literal>
          </text>
        </children>
        <name>Q</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>EGePrTGuX3DpYGp3U33Ypfaxf72</id>
          <identifier>QuantityKindSpec</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Q</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
            <identifier>QuantitySpec</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<overloads>
  <name>get_quantity_spec</name>
  <anchor>get_quantity_spec-03</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>79</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>mgtS7ifEjC6Gfacwm5qPWQ5M2Sc</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>get_quantity_spec</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity specification </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Q</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to query</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>4N5wENfyQV3Q4J7qAwqv9fCbwjCn 4XtqHtFy8UxSaoVMtqksXfwAmAE</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
          <identifier>QuantitySpec</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
</overloads>
<function>
  <name>get_quantity_spec</name>
  <anchor>get_quantity_spec-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>79</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4N5wENfyQV3Q4J7qAwqv9fCbwjCn</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the quantity specification of a reference</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity specification </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Q</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to query</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
          <identifier>QuantitySpec</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_quantity_spec</name>
  <anchor>get_quantity_spec-00</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>87</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4XtqHtFy8UxSaoVMtqksXfwAmAE</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the quantity specification of a reference whose </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Q</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is marked </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>final</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity specification </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Q</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to query</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: `Q` definition should not be marked `final`&quot;</string>
      </balancedTokens>
      <message>2.6.0: `Q` definition should not be marked `final`</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
          <identifier>QuantitySpec</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <requires>std::is_final_v&lt;Q&gt;</requires>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_relative_standard_uncertainty</name>
  <anchor>get_relative_standard_uncertainty</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>615</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2TkUhiLkvqQVcP7hywevpSkpR45n</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>For a constant declared with </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>standard_uncertainty</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, the result is derived as the exact ratio of the uncertainty&apos;s canonical magnitude to the constant&apos;s one (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u_r = u(x)/|x|</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, so the result never carries a sign even for a negative-valued constant).</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>There is no valid result for constants that are exact by definition. Asking for one would conflate &quot;exact by definition&quot; with &quot;measured infinitely precisely&quot;, so it is a compile-time error rather than a zero magnitude.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the relative standard uncertainty of a measured constant</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the relative standard uncertainty of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the measured constant</literal>
          </text>
        </children>
        <name>u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>xKAh8ftVFPPg9yHq2Nj39wmoCFd</id>
          <identifier>UnitMagnitude</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2UFYWEcA38viiGwDvtBX5fW98cyP</id>
            <identifier>MeasuredConstant</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_standard_uncertainty</name>
  <anchor>get_standard_uncertainty</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>639</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4EWkJkF8hMYBRJUUaR1NaCCERr1J</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The result is a unit expression of the constant&apos;s own dimension (constants are units in this library, and so are their uncertainties). For a constant declared with </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>relative_standard_uncertainty</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, the result is derived by scaling the constant itself (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u(x) = u_r * |x|</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, so the result is positive even for a negative-valued constant).</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>As for </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>get_relative_standard_uncertainty</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, there is no valid result for constants that are exact by definition.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the standard uncertainty of a measured constant</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the standard uncertainty of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the measured constant</literal>
          </text>
        </children>
        <name>u</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
          <identifier>Unit</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2UFYWEcA38viiGwDvtBX5fW98cyP</id>
            <identifier>MeasuredConstant</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>get_unit</name>
  <anchor>get_unit</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>100</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>FrEgdz3tkofK6b8xMWwmb8GdqqS</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the unit of a reference</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>U</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to query</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
          <identifier>Unit</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<overloads>
  <name>hypot</name>
  <anchor>hypot-00</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>618</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>8KVbpC6FpfXCbsmqDDPvuiknRGW</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>hypot</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the square root of the sum of the squares of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>x</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>y,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> in the common reference of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>x</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>y</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the square root of the sum of the squares of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>x,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>y,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>z,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> in the common reference of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>x,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>y,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>z</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first quantity</literal>
          </text>
        </children>
        <name>x</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second quantity</literal>
          </text>
        </children>
        <name>y</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>third quantity</literal>
          </text>
        </children>
        <name>z</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>o3zbCHuDpZJM7o2z2DrGkgeCyzQ VQnCACJ1uEwLggmsQ3KnEgawUUL</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>hypot</name>
  <anchor>hypot-03</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>618</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>o3zbCHuDpZJM7o2z2DrGkgeCyzQ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the square root of the sum of the squares of x and y, without undue overflow or underflow at intermediate stages of the computation</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the square root of the sum of the squares of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>x</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>y,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> in the common reference of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>x</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>y</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first quantity</literal>
          </text>
        </children>
        <name>x</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second quantity</literal>
          </text>
        </children>
        <name>y</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>get_quantity_spec(get_common_reference(R1, R2))</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>x</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>y</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R1</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep1</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>R2</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep2</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires(Rep1 v1, Rep2 v2) {
    get_common_reference(R1, R2);
    requires requires { hypot(v1, v2); }
#if MP_UNITS_HOSTED
               || requires { std::hypot(v1, v2); }
#endif
               ;
  }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>hypot</name>
  <anchor>hypot-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>648</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>VQnCACJ1uEwLggmsQ3KnEgawUUL</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the square root of the sum of the squares of x, y, and z, without undue overflow or underflow at intermediate stages of the computation</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the square root of the sum of the squares of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>x,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>y,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>z,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> in the common reference of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>x,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>y,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>z</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first quantity</literal>
          </text>
        </children>
        <name>x</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second quantity</literal>
          </text>
        </children>
        <name>y</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>third quantity</literal>
          </text>
        </children>
        <name>z</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>get_quantity_spec(get_common_reference(R1, R2, R3))</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>x</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>y</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R3</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep3</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>z</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R1</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep1</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>R2</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep2</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>R3</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep3</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires(Rep1 v1, Rep2 v2, Rep3 v3) {
    get_common_reference(R1, R2, R3);
    requires requires { hypot(v1, v2, v3); }
#if MP_UNITS_HOSTED
               || requires { std::hypot(v1, v2, v3); }
#endif
               ;
  }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>implicitly_convertible</name>
  <anchor>implicitly_convertible</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_conversion.h</sourcePath>
      <lineNumber>35</lineNumber>
      <columnNumber>1</columnNumber>
    </defLoc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_concepts.h</sourcePath>
        <lineNumber>104</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>function</kind>
  <id>gL8E2AxzhSpL5g4ba8PX5FXYhSp</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether a quantity of quantity spec </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>From</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> can be implicitly converted to quantity spec </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>To</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>from</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is implicitly convertible to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>source quantity specification value</literal>
          </text>
        </children>
        <name>from</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>target quantity specification value</literal>
          </text>
        </children>
        <name>to</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>source quantity specification type</literal>
          </text>
        </children>
        <name>From</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>target quantity specification type</literal>
          </text>
        </children>
        <name>To</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>From</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>from</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>To</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>to</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>From</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
            <identifier>QuantitySpec</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>To</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
            <identifier>QuantitySpec</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>interconvertible</name>
  <anchor>interconvertible</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_conversion.h</sourcePath>
      <lineNumber>74</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>RHAvDx7WTA94zDysotYY7hqK16b</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether two quantity specifications are convertible to each other in both directions</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>qs1</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is implicitly convertible to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>qs2</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>qs2</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is implicitly convertible to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>qs1</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first quantity specification value</literal>
          </text>
        </children>
        <name>qs1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second quantity specification value</literal>
          </text>
        </children>
        <name>qs2</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first quantity specification type</literal>
          </text>
        </children>
        <name>QS1</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second quantity specification type</literal>
          </text>
        </children>
        <name>QS2</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>QS1</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>qs1</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>QS2</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>qs2</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>QS1</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
            <identifier>QuantitySpec</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>QS2</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
            <identifier>QuantitySpec</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<overloads>
  <name>inverse</name>
  <anchor>inverse-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>214</lineNumber>
      <columnNumber>15</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>4KzrbYRMcBZgXdNt9cVLatdqRebh</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>inverse</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>dimension_one / d</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the result of the computation</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the inverse of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>q,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> expressed in unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>To</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the dimension to invert</literal>
          </text>
        </children>
        <name>d</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>reference being inverted</literal>
          </text>
        </children>
        <name>r</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity to invert</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>3yNeDKvFG3YFjrSbX7nHUQ3j7gwz 3dvVC2HZ2jt5yFjXC7nAS7JwQHeE 36MAwFh1jeWTFV1iL9pd6VwyaYXK</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>inverse</name>
  <anchor>inverse-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>214</lineNumber>
      <columnNumber>15</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3yNeDKvFG3YFjrSbX7nHUQ3j7gwz</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the inverse of a dimension.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>dimension_one / d</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the dimension to invert</literal>
          </text>
        </children>
        <name>d</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
          <identifier>Unit</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>d</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>inverse</name>
  <anchor>inverse-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>218</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3dvVC2HZ2jt5yFjXC7nAS7JwQHeE</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the inverse of a reference</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the result of the computation</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>reference being inverted</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>41shz9r5JUEt8JdP4cmahP2ZeN9m</id>
          <identifier>reference_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
              <identifier>detail</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>inverse(Q{})</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>inverse(U{})</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>inverse</name>
  <anchor>inverse-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>597</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>36MAwFh1jeWTFV1iL9pd6VwyaYXK</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the inverse of a quantity in a provided unit</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the inverse of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>q,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> expressed in unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>To</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity to invert</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>To</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <requires>requires {
    representation_values&lt;Rep&gt;::one();
    value_cast&lt;To&gt;(representation_values&lt;Rep&gt;::one() / q);
  }</requires>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>is_eq_zero</name>
  <anchor>is_eq_zero</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/compare.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/compare.h</sourcePath>
      <lineNumber>45</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3RiLzwyytyUgeQRDBxbHcSyQarYB</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>v</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> compares equal to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T::zero()</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>v == T::zero()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The value to compare against </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T::zero()</literal>
              </text>
            </children>
          </code>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: compare against literal `0` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: compare against literal `0` instead</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>T</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>v</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires {
    { T::zero() } -&gt; std::equality_comparable_with&lt;T&gt;;
  }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>is_gt_zero</name>
  <anchor>is_gt_zero</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/compare.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/compare.h</sourcePath>
      <lineNumber>90</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>SPXNHyJ2GYKMPCnJFSNuAzytdz2</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>v</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> compares greater than </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T::zero()</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>v &gt; T::zero()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The value to compare against </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T::zero()</literal>
              </text>
            </children>
          </code>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: compare against literal `0` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: compare against literal `0` instead</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>T</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>v</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires {
    { T::zero() } -&gt; std::three_way_comparable_with&lt;T&gt;;
  }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>is_gteq_zero</name>
  <anchor>is_gteq_zero</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/compare.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/compare.h</sourcePath>
      <lineNumber>120</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4D88S52sTEoE5zrQPnWcXf5mkorp</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>v</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> compares greater than or equal to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T::zero()</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>v &gt;= T::zero()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The value to compare against </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T::zero()</literal>
              </text>
            </children>
          </code>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: compare against literal `0` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: compare against literal `0` instead</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>T</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>v</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires {
    { T::zero() } -&gt; std::three_way_comparable_with&lt;T&gt;;
  }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>is_integral_scaling</name>
  <anchor>is_integral_scaling</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/value_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/value_cast.h</sourcePath>
      <lineNumber>148</lineNumber>
      <columnNumber>15</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>eWvQpMUChCHd9VJS44p5duXt5NG</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>This is the key predicate used by the default </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>implicitly_scalable</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to decide whether conversions between integer-like representation types are non-truncating (and therefore may be implicit). For example, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>m → mm</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> has an integral factor (×1000), so integer conversions in that direction are implicit; </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>mm → m</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> has a fractional factor (÷1000), so they are explicit.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>true</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> if the scaling factor from </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>from</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>to</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is an exact positive integer.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the scaling factor from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>from</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>to</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is an exact positive integer</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>source unit</literal>
          </text>
        </children>
        <name>from</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>target unit</literal>
          </text>
        </children>
        <name>to</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>from</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>auto</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>to</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>is_lt_zero</name>
  <anchor>is_lt_zero</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/compare.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/compare.h</sourcePath>
      <lineNumber>75</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3xZ56Yj5VphqjwHcorce15guk3k</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>v</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> compares less than </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T::zero()</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>v &lt; T::zero()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The value to compare against </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T::zero()</literal>
              </text>
            </children>
          </code>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: compare against literal `0` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: compare against literal `0` instead</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>T</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>v</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires {
    { T::zero() } -&gt; std::three_way_comparable_with&lt;T&gt;;
  }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>is_lteq_zero</name>
  <anchor>is_lteq_zero</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/compare.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/compare.h</sourcePath>
      <lineNumber>105</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2QB87DxNg9sNwVxDZrtMyLyEPXWS</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>v</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> compares less than or equal to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T::zero()</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>v &lt;= T::zero()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The value to compare against </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T::zero()</literal>
              </text>
            </children>
          </code>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: compare against literal `0` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: compare against literal `0` instead</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>T</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>v</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires {
    { T::zero() } -&gt; std::three_way_comparable_with&lt;T&gt;;
  }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>is_neq_zero</name>
  <anchor>is_neq_zero</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/compare.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/compare.h</sourcePath>
      <lineNumber>60</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3fnd1Y84H7upPYK9uG7bRfrfZDpF</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>v</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> compares not equal to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T::zero()</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>v != T::zero()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> otherwise</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The value to compare against </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>T::zero()</literal>
              </text>
            </children>
          </code>
        </children>
        <name>v</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: compare against literal `0` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: compare against literal `0` instead</message>
    </deprecated>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>T</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>v</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires {
    { T::zero() } -&gt; std::equality_comparable_with&lt;T&gt;;
  }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>is_non_negative</name>
  <anchor>is_non_negative</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_conversion.h</sourcePath>
      <lineNumber>102</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2vHcgLGWRUMviebhjqbF1XuZ7jMx</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether a quantity specification is tagged as non-negative</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if quantities of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Q</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> can never hold a negative value</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity specification value</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity specification type</literal>
          </text>
        </children>
        <name>Q</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Q</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
            <identifier>QuantitySpec</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<overloads>
  <name>isfinite</name>
  <anchor>isfinite-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>187</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>PP6r19iNqghFPB74V8yrx8raz38</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>isfinite</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>bool: Whether the quantity is finite or not.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>bool: Whether the quantity point is finite or not.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity to analyze.</literal>
          </text>
        </children>
        <name>a</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>mJt3LejkMnAFdYL9MfBd99gDFWN 42HcJRNH8Pa9ABp1B3NaoJRLYyzP</members>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
</overloads>
<function>
  <name>isfinite</name>
  <anchor>isfinite-03</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>187</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>mJt3LejkMnAFdYL9MfBd99gDFWN</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Determines if a quantity is finite.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>bool: Whether the quantity is finite or not.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity to analyze.</literal>
          </text>
        </children>
        <name>a</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>a</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires(Rep v) { isfinite(v); }
#if MP_UNITS_HOSTED
           || requires(Rep v) { std::isfinite(v); }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>isfinite</name>
  <anchor>isfinite-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>206</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>42HcJRNH8Pa9ABp1B3NaoJRLYyzP</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Determines if a quantity point is finite.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>bool: Whether the quantity point is finite or not.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity point to analyze.</literal>
          </text>
        </children>
        <name>a</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity_point</literal>
        <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>PO</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>a</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>PO</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires(quantity&lt;R, Rep&gt; q) { isfinite(q); }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<overloads>
  <name>isinf</name>
  <anchor>isinf-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>219</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>3jqp2wFeNuJSx7EZVgTH69GqRWfb</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>isinf</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>bool: Whether the quantity is infinite or not.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>bool: Whether the quantity point is infinite or not.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity to analyze.</literal>
          </text>
        </children>
        <name>a</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>26RHSNxE8CwJ8tpVmtnNbjzJSSDn 4R8yJqKSLQSFiDMvRPJrYXgmJbvZ</members>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
</overloads>
<function>
  <name>isinf</name>
  <anchor>isinf-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>219</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>26RHSNxE8CwJ8tpVmtnNbjzJSSDn</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Determines if a quantity is infinite.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>bool: Whether the quantity is infinite or not.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity to analyze.</literal>
          </text>
        </children>
        <name>a</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>a</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires(Rep v) { isinf(v); }
#if MP_UNITS_HOSTED
           || requires(Rep v) { std::isinf(v); }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>isinf</name>
  <anchor>isinf-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>238</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4R8yJqKSLQSFiDMvRPJrYXgmJbvZ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Determines if a quantity point is infinite.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>bool: Whether the quantity point is infinite or not.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity point to analyze.</literal>
          </text>
        </children>
        <name>a</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity_point</literal>
        <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>PO</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>a</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>PO</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires(quantity&lt;R, Rep&gt; q) { isinf(q); }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<overloads>
  <name>isnan</name>
  <anchor>isnan-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>252</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>2xVew8uXnyagoywhJkeoxSbfSvQx</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>isnan</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>bool: Whether the quantity is a NaN or not.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>bool: Whether the quantity point is a NaN or not.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity to analyze.</literal>
          </text>
        </children>
        <name>a</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>3Y9pDzTA2xp8CPAa3Q1DW57wtvcY 32XC7XTVTzPzir3eK7gPvcPMpUyg</members>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
</overloads>
<function>
  <name>isnan</name>
  <anchor>isnan-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>252</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3Y9pDzTA2xp8CPAa3Q1DW57wtvcY</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Determines if a quantity is a nan.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>bool: Whether the quantity is a NaN or not.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity to analyze.</literal>
          </text>
        </children>
        <name>a</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>a</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires(Rep v) { isnan(v); }
#if MP_UNITS_HOSTED
           || requires(Rep v) { std::isnan(v); }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>isnan</name>
  <anchor>isnan-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>272</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>32XC7XTVTzPzir3eK7gPvcPMpUyg</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Determines if a quantity point is a nan.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>bool: Whether the quantity point is a NaN or not.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity point to analyze.</literal>
          </text>
        </children>
        <name>a</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity_point</literal>
        <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>PO</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>a</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>PO</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires(quantity&lt;R, Rep&gt; q) { isnan(q); }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>lerp</name>
  <anchor>lerp</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>680</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>eHaYzTDunYac8NNqmWZcDLSCKkY</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Computes the linear interpolation between </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>a</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>b</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, if the parameter </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>t</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is inside </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>[​0​, 1)]</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> (the linear extrapolation otherwise), i.e. the result of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>a + t(b − a)</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> with accounting for floating-point calculation imprecision.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Linear interpolation or extrapolation</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the point resulting from interpolating (or extrapolating) between </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>a</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>b</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> by </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>t</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the point corresponding to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>t == 0</literal>
              </text>
            </children>
          </code>
        </children>
        <name>a</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the point corresponding to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>t == 1</literal>
              </text>
            </children>
          </code>
        </children>
        <name>b</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the interpolation (or extrapolation) factor</literal>
          </text>
        </children>
        <name>t</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity_point</literal>
        <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>get_quantity_spec(get_common_reference(R1, R2))</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>Origin</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>a</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>Origin</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>b</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Factor</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>t</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R1</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>Origin</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep1</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>R2</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep2</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Factor</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires(Rep1 a, Rep2 b, Factor t) {
    get_common_reference(R1, R2);
    requires requires { lerp(a, b, t); }
#if MP_UNITS_HOSTED
               || requires { std::lerp(a, b, t); }
#endif
               ;
  }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>midpoint</name>
  <anchor>midpoint</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>709</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3UqzWL6jFPAeDBFLNDchRyrw8aDU</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the midpoint of two points</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the point halfway between </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>a</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>b</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first point</literal>
          </text>
        </children>
        <name>a</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second point</literal>
          </text>
        </children>
        <name>b</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity_point</literal>
        <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>get_quantity_spec(get_common_reference(R1, R2))</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>Origin</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>a</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>Origin</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>b</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R1</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>Origin</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep1</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>R2</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep2</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires(Rep1 a, Rep2 b) {
    get_common_reference(R1, R2);
    requires requires { midpoint(a, b); }
#if MP_UNITS_HOSTED || __cpp_lib_freestanding_numeric &gt;= 202502L
               || requires { std::midpoint(a, b); }
#endif
               ;
  }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<overloads>
  <name>operator*</name>
  <anchor>operator_star-00</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>136</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>1jD4dvqNG89bgFxm96kCqL3mA97</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplication operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference resulting from multiplying the quantity specification and the unit</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference resulting from multiplying the quantity specifications and the units</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity holding the same numerical value as </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>q</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, with reference </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Q::reference * R{}</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity of reference </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>r</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> holding the value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the unit to multiply</literal>
          </text>
        </children>
        <name>u1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to multiply by</literal>
          </text>
        </children>
        <name>r</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the unit to multiply by</literal>
          </text>
        </children>
        <name>u2</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to multiply</literal>
          </text>
        </children>
        <name>r1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to multiply by</literal>
          </text>
        </children>
        <name>r2</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity operand (unused)</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>representation operand (unused)</literal>
          </text>
        </children>
        <name>rep</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>representation value to become the quantity&apos;s numerical value</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
    </params>
  </doc>
  <funcClass>normal</funcClass>
  <overloadedOperator>*</overloadedOperator>
  <members>cTiaqqdEGCNTBbco8JCkByMWuez 4SbkNSE1uMYUqxiV3RZFhLwLTSyK 298nwg2AAerWNrDzqyMQH8qmgajE 469gptKGWdUDXMQT5pgJ3rdN7fEJ 3qdadzA6DXuPhEiGofFTmcx8BMnk V7ZUiPALDYvTdLVbFeNUFN6iJuj 2YmSVub2sfcZsvGsV2Wavra6o51W 2T2HmKCe27FArdXyGiABLzR7sHtr</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator*</name>
  <anchor>operator_star-02b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>164</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>cTiaqqdEGCNTBbco8JCkByMWuez</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplies a unit by a reference</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference resulting from multiplying the quantity specification and the unit</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the unit to multiply</literal>
          </text>
        </children>
        <name>u1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to multiply by</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>41shz9r5JUEt8JdP4cmahP2ZeN9m</id>
          <identifier>reference_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
              <identifier>detail</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>get_quantity_spec(U1{}) * Q{}</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>U1{} * U{}</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U1</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u1</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>150</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4SbkNSE1uMYUqxiV3RZFhLwLTSyK</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplies a reference by a unit</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference resulting from multiplying the quantity specification and the unit</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to multiply</literal>
          </text>
        </children>
        <name>r</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the unit to multiply by</literal>
          </text>
        </children>
        <name>u2</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>41shz9r5JUEt8JdP4cmahP2ZeN9m</id>
          <identifier>reference_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
              <identifier>detail</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>Q{} * get_quantity_spec(U2{})</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>U{} * U2{}</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U2</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u2</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>136</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>298nwg2AAerWNrDzqyMQH8qmgajE</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Multiplies two references</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference resulting from multiplying the quantity specifications and the units</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to multiply</literal>
          </text>
        </children>
        <name>r1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to multiply by</literal>
          </text>
        </children>
        <name>r2</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>41shz9r5JUEt8JdP4cmahP2ZeN9m</id>
          <identifier>reference_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
              <identifier>detail</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>Q{} * Q2{}</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>U{} * U2{}</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r1</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Q2</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>U2</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>r2</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>382</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>469gptKGWdUDXMQT5pgJ3rdN7fEJ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deleted overload rejecting </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>reference * quantity</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> in favor of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity * reference</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>reference operand (unused)</literal>
          </text>
        </children>
        <name>r</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity operand (unused)</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
  </doc>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>R</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Q</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>R</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>Quantity&lt;std::remove_cvref_t&lt;Q&gt;&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <isDeleted/>
  <isDeletedAsWritten/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>324</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3qdadzA6DXuPhEiGofFTmcx8BMnk</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deleted overload rejecting </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>reference * representation</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> in favor of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>representation * reference</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>reference operand (unused)</literal>
          </text>
        </children>
        <name>r</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>representation operand (unused)</literal>
          </text>
        </children>
        <name>rep</name>
      </param>
    </params>
  </doc>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>R</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Rep</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>rep</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>R</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>RepresentationOf&lt;std::remove_cvref_t&lt;Rep&gt;, get_quantity_spec(R{})&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <isDeleted/>
  <isDeletedAsWritten/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-022</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>357</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>V7ZUiPALDYvTdLVbFeNUFN6iJuj</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Rebinds a quantity to a reference obtained by multiplying its own reference by </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>R</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity holding the same numerical value as </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>q</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, with reference </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Q::reference * R{}</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity being rebound</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>reference to multiply the quantity&apos;s reference by</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQ</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>R</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>FwdQ</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>R</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQ</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-06f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>263</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2YmSVub2sfcZsvGsV2Wavra6o51W</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a quantity from a representation value and a reference</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity of reference </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>r</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> holding the value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>representation value to become the quantity&apos;s numerical value</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>reference defining the quantity specification and unit</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>R{}</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdRep</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>R</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>FwdRep</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>R</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdRep</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>get_quantity_spec(R{})</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>(!detail::OffsetUnit&lt;decltype(get_unit(R{}))&gt;)</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<function>
  <name>operator*</name>
  <anchor>operator_star-067</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>292</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2T2HmKCe27FArdXyGiABLzR7sHtr</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated constructor of a quantity from a representation value and an offset-unit reference</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity of reference </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>r</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> holding the value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>representation value to become the quantity&apos;s numerical value</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>offset-unit reference defining the quantity specification and unit</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.3.0: References using offset units (e.g., temperatures) should be constructed with the `delta` or `point` helpers&quot;</string>
      </balancedTokens>
      <message>2.3.0: References using offset units (e.g., temperatures) should be constructed with the `delta` or `point` helpers</message>
    </deprecated>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdRep</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>R</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>FwdRep</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>R</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdRep</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>get_quantity_spec(R{})</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>detail::OffsetUnit&lt;decltype(get_unit(R{}))&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>*</overloadedOperator>
</function>
<overloads>
  <name>operator/</name>
  <anchor>operator_slash-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>178</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>3MMonumi3pM2abo3xo9rnWj9KYXn</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Division operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference resulting from dividing the quantity specification and the unit</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference resulting from dividing the quantity specifications and the units</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity holding the same numerical value as </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>q</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, with reference </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Q::reference / R{}</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity of the inverse of reference </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>r</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> holding the value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the unit to divide</literal>
          </text>
        </children>
        <name>u1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to divide by</literal>
          </text>
        </children>
        <name>r</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the unit to divide by</literal>
          </text>
        </children>
        <name>u2</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to divide</literal>
          </text>
        </children>
        <name>r1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to divide by</literal>
          </text>
        </children>
        <name>r2</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity operand (unused)</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>representation operand (unused)</literal>
          </text>
        </children>
        <name>rep</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>representation value to become the quantity&apos;s numerical value</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
    </params>
  </doc>
  <funcClass>normal</funcClass>
  <overloadedOperator>/</overloadedOperator>
  <members>3zNCjWPfcALw4Pq7Tq9Gj6DmAYoJ 4Dq2WontgA2XUfiNWnuyrnb97wrg 3wVtfmm19mJta2odSfM8WusspTuQ P8miNZfSv3qEkENmkYa5njF4Tz2 23mUam13NjLEokyQf5gnwrE3Tfg9 2o7DPGbYfArwGdhsC9USAZ5BXX6Q 2ZFvLNnrVZBUf3uEKDogmmSxG8ya 3gSZNtLyaZ1rHxTE2jSfKP857nSi</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>operator/</name>
  <anchor>operator_slash-0d6</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>206</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3zNCjWPfcALw4Pq7Tq9Gj6DmAYoJ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Divides a unit by a reference</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference resulting from dividing the quantity specification and the unit</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the unit to divide</literal>
          </text>
        </children>
        <name>u1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to divide by</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>41shz9r5JUEt8JdP4cmahP2ZeN9m</id>
          <identifier>reference_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
              <identifier>detail</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>get_quantity_spec(U1{}) / Q{}</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>U1{} / U{}</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U1</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u1</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>192</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4Dq2WontgA2XUfiNWnuyrnb97wrg</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Divides a reference by a unit</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference resulting from dividing the quantity specification and the unit</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to divide</literal>
          </text>
        </children>
        <name>r</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the unit to divide by</literal>
          </text>
        </children>
        <name>u2</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>41shz9r5JUEt8JdP4cmahP2ZeN9m</id>
          <identifier>reference_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
              <identifier>detail</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>Q{} / get_quantity_spec(U2{})</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>U{} / U2{}</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U2</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u2</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-0d3</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>178</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3wVtfmm19mJta2odSfM8WusspTuQ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Divides a reference by another reference</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a reference resulting from dividing the quantity specifications and the units</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to divide</literal>
          </text>
        </children>
        <name>r1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to divide by</literal>
          </text>
        </children>
        <name>r2</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>41shz9r5JUEt8JdP4cmahP2ZeN9m</id>
          <identifier>reference_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
              <identifier>detail</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>Q{} / Q2{}</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>U{} / U2{}</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r1</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Q2</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>U2</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>r2</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>393</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>P8miNZfSv3qEkENmkYa5njF4Tz2</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deleted overload rejecting </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>reference / quantity</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, which has no defined meaning</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>reference operand (unused)</literal>
          </text>
        </children>
        <name>r</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity operand (unused)</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
  </doc>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>R</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Q</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>R</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>Quantity&lt;std::remove_cvref_t&lt;Q&gt;&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <isDeleted/>
  <isDeletedAsWritten/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>340</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>23mUam13NjLEokyQf5gnwrE3Tfg9</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deleted overload rejecting </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>reference / representation</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, which has no defined meaning</literal>
        </text>
      </children>
    </brief>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>reference operand (unused)</literal>
          </text>
        </children>
        <name>r</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>representation operand (unused)</literal>
          </text>
        </children>
        <name>rep</name>
      </param>
    </params>
  </doc>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>R</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>Rep</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>rep</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>R</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>RepresentationOf&lt;std::remove_cvref_t&lt;Rep&gt;, get_quantity_spec(R{})&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <isDeleted/>
  <isDeletedAsWritten/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>370</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2o7DPGbYfArwGdhsC9USAZ5BXX6Q</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Rebinds a quantity to a reference obtained by dividing its own reference by </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>R</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity holding the same numerical value as </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>q</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, with reference </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Q::reference / R{}</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity being rebound</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>reference to divide the quantity&apos;s reference by</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQ</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>R</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>FwdQ</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>R</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQ</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>277</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2ZFvLNnrVZBUf3uEKDogmmSxG8ya</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a quantity from a representation value and the inverse of a reference</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity of the inverse of reference </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>r</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> holding the value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>representation value to become the quantity&apos;s numerical value</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>reference whose inverse defines the resulting quantity&apos;s specification and unit</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdRep</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>R</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>FwdRep</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>R</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdRep</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>get_quantity_spec(R{})</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>(!detail::OffsetUnit&lt;decltype(get_unit(R{}))&gt;)</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>operator/</name>
  <anchor>operator_slash-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>309</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3gSZNtLyaZ1rHxTE2jSfKP857nSi</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated constructor of a quantity from a representation value and the inverse of an offset-unit reference</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity of the inverse of reference </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>r</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> holding the value of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>representation value to become the quantity&apos;s numerical value</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>offset-unit reference whose inverse defines the resulting quantity&apos;s specification and unit</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.3.0: References using offset units (e.g., temperatures) should be constructed with the `delta` or `point` helpers&quot;</string>
      </balancedTokens>
      <message>2.3.0: References using offset units (e.g., temperatures) should be constructed with the `delta` or `point` helpers</message>
    </deprecated>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdRep</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>R</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>FwdRep</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>R</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdRep</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
            <identifier>RepresentationOf</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>get_quantity_spec(R{})</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
    <requires>detail::OffsetUnit&lt;decltype(get_unit(R{}))&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>/</overloadedOperator>
</function>
<function>
  <name>point</name>
  <anchor>point</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/construction_helpers.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/construction_helpers.h</sourcePath>
      <lineNumber>65</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4KgZnaFDataWaAxxtenhyF5wCdT1</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Constructs a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_point</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> of reference </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>R</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a raw representation value</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>A </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> of reference </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>R</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, relative to the default point origin, holding </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The raw representation value to wrap in a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point</literal>
              </text>
            </children>
          </code>
        </children>
        <name>lhs</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity_point</literal>
        <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
          <identifier>quantity_point</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>R{}</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>default_point_origin(R{})</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdRep</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>lhs</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
                <identifier>Reference</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
  <functionObjectImpl>2PksRvMJZhCxhDF9TqFckTUnAVKW</functionObjectImpl>
</function>
<overloads>
  <name>pow</name>
  <anchor>pow-00</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>231</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>4tdSwbZym8QcUaANP4zkEzrjz8b</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>pow</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The result of computation</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity The result of computation</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Reference being the base of the operation</literal>
          </text>
        </children>
        <name>r</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity being the base of the operation</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Exponent numerator</literal>
          </text>
        </children>
        <name>Num</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Exponent denominator</literal>
          </text>
        </children>
        <name>Den</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>zLF33qshLAj8zKRhGccYSxbKnN6 2VT7ZxvKdoYDyAopiT8QFirGTMF6</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>pow</name>
  <anchor>pow-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>231</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>zLF33qshLAj8zKRhGccYSxbKnN6</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the value of a reference raised to the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Num/Den</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> power</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The result of computation</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Reference being the base of the operation</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Exponent numerator</literal>
          </text>
        </children>
        <name>Num</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Exponent denominator</literal>
          </text>
        </children>
        <name>Den</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>41shz9r5JUEt8JdP4cmahP2ZeN9m</id>
          <identifier>reference_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
              <identifier>detail</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>pow&lt;Num, Den&gt;(Q{})</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>pow&lt;Num, Den&gt;(U{})</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>pow</name>
  <anchor>pow-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>91</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2VT7ZxvKdoYDyAopiT8QFirGTMF6</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Both the quantity value and its quantity specification are the base of the operation.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the value of a quantity raised to the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Num/Den</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> power</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity The result of computation</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity being the base of the operation</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Exponent numerator</literal>
          </text>
        </children>
        <name>Num</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Exponent denominator</literal>
          </text>
        </children>
        <name>Den</name>
      </tParam>
    </tparams>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>pow&lt;Num, Den&gt;(R)</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Num</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>3VMt99Wp744j4oYDKzuM6GMAkVHe</id>
                <identifier>intmax_t</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>Den</name>
        <default>
          <constant>
            <kind>constant</kind>
            <value>1</value>
          </constant>
        </default>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>3VMt99Wp744j4oYDKzuM6GMAkVHe</id>
                <identifier>intmax_t</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>(Den != 0) &amp;&amp; requires(Rep v) {
    representation_values&lt;Rep&gt;::one();
    requires requires { pow(v, 1.0); }
#if MP_UNITS_HOSTED
               || requires { std::pow(v, 1.0); }
#endif
               ;
  }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<overloads>
  <name>quantity_cast</name>
  <anchor>quantity_cast-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_cast.h</sourcePath>
      <lineNumber>62</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>4UQrpzdt3Vgs8AYspTaH7H6Rc5ab</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_cast</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity with its quantity type recast to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToQS</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point with its quantity type recast to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToQS</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity to cast</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point to cast</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a quantity specification to use for a target quantity</literal>
          </text>
        </children>
        <name>ToQS</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>2gMM42HJe5XUgXEGTbuNrbmvYHD9 2dLvxG8Ug7oT5QU6u4Lr3PsgjQKF</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>quantity_cast</name>
  <anchor>quantity_cast-078</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_cast.h</sourcePath>
      <lineNumber>62</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2gMM42HJe5XUgXEGTbuNrbmvYHD9</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>This cast converts only a quantity type. It might be used to force some quantity type conversions that are not implicitly allowed but are allowed explicitly.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>For example:</literal>
          </text>
        </children>
      </paragraph>
      <code>
        <kind>code</kind>
        <literal>auto length = isq::length(42 * m);
auto distance = quantity_cast&lt;isq::distance&gt;(length);</literal>
        <info>cpp</info>
      </code>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>This cast does not affect the underlying value of a number stored in a quantity.</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Explicit cast of a quantity type</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity with its quantity type recast to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToQS</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity to cast</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a quantity specification to use for a target quantity</literal>
          </text>
        </children>
        <name>ToQS</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQ</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>ToQS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
                <identifier>QuantitySpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>FwdQ</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQ</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(mp_units::castable(Q::quantity_spec, ToQS)) &amp;&amp;
          requires { typename quantity&lt;make_reference(ToQS, Q::unit), typename Q::rep&gt;; }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>quantity_cast</name>
  <anchor>quantity_cast-074</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_cast.h</sourcePath>
      <lineNumber>89</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2dLvxG8Ug7oT5QU6u4Lr3PsgjQKF</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>This cast converts only a quantity point type. It might be used to force some quantity point type conversions that are not implicitly allowed but are allowed explicitly.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>For example:</literal>
          </text>
        </children>
      </paragraph>
      <code>
        <kind>code</kind>
        <literal>auto length = isq::length(quantity_point{42 * m});
auto altitude = quantity_cast&lt;isq::altitude&gt;(length);</literal>
        <info>cpp</info>
      </code>
      <admonition>
        <kind>admonition</kind>
        <blocks>
          <paragraph>
            <kind>paragraph</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>This cast does not affect the underlying value of a number stored in a quantity point.</literal>
              </text>
            </children>
          </paragraph>
        </blocks>
        <admonish>note</admonish>
      </admonition>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Explicit cast of a quantity point type</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point with its quantity type recast to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToQS</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point to cast</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a quantity specification to use for a target quantity point</literal>
          </text>
        </children>
        <name>ToQS</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
          <identifier>QuantityPoint</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQP</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>qp</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>ToQS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
                <identifier>QuantitySpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>FwdQP</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQP</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
            <identifier>QuantityPoint</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(mp_units::castable(QP::quantity_spec, ToQS)) &amp;&amp;
          requires { typename quantity_point&lt;make_reference(ToQS, QP::unit), QP::point_origin, typename QP::rep&gt;; }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>remainder</name>
  <anchor>remainder</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>371</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4H8pdkfYVY5qHRLaPo1jHuDgE8Zb</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the IEEE remainder of the floating point division operation x / y.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the IEEE remainder of x / y, in the common reference of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>x</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>y</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the dividend quantity</literal>
          </text>
        </children>
        <name>x</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the divisor quantity</literal>
          </text>
        </children>
        <name>y</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
          <identifier>QuantityOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>get_quantity_spec(R1)</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R1</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep1</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>x</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R2</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep2</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>y</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R1</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep1</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>R2</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep2</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires(Rep1 v1, Rep2 v2) {
    get_common_reference(R1, R2);
    requires requires { remainder(v1, v2); }
#if MP_UNITS_HOSTED
               || requires { std::remainder(v1, v2); }
#endif
               ;
  }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<overloads>
  <name>round</name>
  <anchor>round-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>540</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>KiGjPFqEB4xzKurFj2unqRxcjjz</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>round</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity The quantity rounded to the nearest unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>To</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, rounding to even in halfway cases.</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>QuantityPoint The quantity rounded to the nearest unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>To</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, rounding to even in halfway cases.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity being the base of the operation</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity point being the base of the operation</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>4BiwtjHCFBoNNjoP7MMWdKT6RrWx 3jqbUTxXcZidqaPYedPeWbRcBxB5</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>round</name>
  <anchor>round-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>540</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4BiwtjHCFBoNNjoP7MMWdKT6RrWx</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Returns the value </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>res</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> representable in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>To</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> unit that is the closest to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>q</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>. If there are two such values, returns the even value (that is, the value </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>res</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> such that </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>res % 2 == 0</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>).</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the nearest quantity with integer representation and unit type </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>To</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>q</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity The quantity rounded to the nearest unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>To</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, rounding to even in halfway cases.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity being the base of the operation</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>detail::clone_reference_with&lt;To&gt;(R)</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>To</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <requires>requires {
    mp_units::floor&lt;To&gt;(q);
    representation_values&lt;Rep&gt;::one();
  } &amp;&amp; std::constructible_from&lt;std::int64_t, Rep&gt;</requires>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>round</name>
  <anchor>round-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>570</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3jqbUTxXcZidqaPYedPeWbRcBxB5</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Returns the value </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>res</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> representable in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>To</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> unit that is the closest to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>qp</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>. If there are two such values, returns the even value (that is, the value </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>res</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> such that </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>res % 2 == 0</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>).</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the nearest quantity point with integer representation and unit type </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>To</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>qp</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>QuantityPoint The quantity rounded to the nearest unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>To</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, rounding to even in halfway cases.</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity point being the base of the operation</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity_point</literal>
        <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <specialization>
          <kind>specialization</kind>
          <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
          <identifier>QuantityPointOf</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_point&lt;R, PO, Rep&gt;::quantity_spec</value>
            </constant>
          </templateArgs>
        </specialization>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
                  <identifier>quantity_point</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <constant>
                      <kind>constant</kind>
                      <value>PO</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>qp</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>To</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>PO</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <requires>requires {
    mp_units::floor&lt;To&gt;(qp);
    representation_values&lt;Rep&gt;::one();
  } &amp;&amp; std::constructible_from&lt;std::int64_t, Rep&gt;</requires>
  <constexpr>constexpr</constexpr>
</function>
<overloads>
  <name>scale</name>
  <anchor>scale-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/scaling.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/scaling.h</sourcePath>
      <lineNumber>300</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>27p187kmmYWM2brZM5uahihewTsL</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>scale</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>value</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> scaled by </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>m,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> truncated to type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>To</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>value</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> scaled by </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>m,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> rounded to type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>To</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> according to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>policy</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>unit magnitude to scale </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>value</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> by</literal>
          </text>
        </children>
        <name>m</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>value being scaled</literal>
          </text>
        </children>
        <name>value</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>rounding policy tag selecting how the scaled result is rounded</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>4GEDbAr7KpTjvXWBUv8MdTf1GPU7 DWHVG5beRp6J5SJQFa7rBwiGnLk</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>scale</name>
  <anchor>scale-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/scaling.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/scaling.h</sourcePath>
      <lineNumber>300</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4GEDbAr7KpTjvXWBUv8MdTf1GPU7</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>When </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>From</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> provides a magnitude-aware </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>operator*(From,M)</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> customization point, it is used first. The return type may differ from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>To</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> (e.g. a representation with scaled bounds). Otherwise, the built-in floating-point or integer path is used and the result type is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>To.</literal>
              </text>
            </children>
          </code>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Use this in custom </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>operator*(T, UnitMagnitude)</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> implementations to reuse the library&apos;s built-in scaling logic instead of duplicating it.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Scale </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>value</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> by the unit magnitude passed as </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>m,</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> converting to type </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>To.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>value</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> scaled by </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>m,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> truncated to type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>To</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>unit magnitude to scale </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>value</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> by</literal>
          </text>
        </children>
        <name>m</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>value being scaled</literal>
          </text>
        </children>
        <name>value</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>M</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>m</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>From</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>value</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>To</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>M</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>xKAh8ftVFPPg9yHq2Nj39wmoCFd</id>
            <identifier>UnitMagnitude</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>From</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>detail::UnitMagnitudeScalable&lt;From&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>scale</name>
  <anchor>scale-00</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/scaling.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/scaling.h</sourcePath>
      <lineNumber>316</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>DWHVG5beRp6J5SJQFa7rBwiGnLk</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Scale </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>value</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> by the unit magnitude passed as </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>m,</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> converting to type </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>To,</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> with the result rounded according to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>policy.</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>value</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> scaled by </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>m,</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> rounded to type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>To</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> according to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>policy</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>unit magnitude to scale </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>value</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> by</literal>
          </text>
        </children>
        <name>m</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>value being scaled</literal>
          </text>
        </children>
        <name>value</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>rounding policy tag selecting how the scaled result is rounded</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>M</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>m</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>From</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>value</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>To</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>M</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>xKAh8ftVFPPg9yHq2Nj39wmoCFd</id>
            <identifier>UnitMagnitude</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>From</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>detail::UnitMagnitudeScalable&lt;From&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<overloads>
  <name>sqrt</name>
  <anchor>sqrt-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>243</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>3ht9JzqFL3mp4dJNxazYNUcku3L9</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>sqrt</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The result of computation</literal>
          </text>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity The result of computation</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Reference being the base of the operation</literal>
          </text>
        </children>
        <name>r</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity being the base of the operation</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>4X6Ge7z9QBdknt3JAmNun1SZ4jeX 3XiPXSjoFmrqZA3npUJ69qVJNskR</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>sqrt</name>
  <anchor>sqrt-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>243</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4X6Ge7z9QBdknt3JAmNun1SZ4jeX</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the square root of a reference</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The result of computation</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Reference being the base of the operation</literal>
          </text>
        </children>
        <name>r</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>41shz9r5JUEt8JdP4cmahP2ZeN9m</id>
          <identifier>reference_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
              <identifier>detail</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>sqrt(Q{})</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>sqrt(U{})</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>sqrt</name>
  <anchor>sqrt-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/math.h</shortPath>
      <sourcePath>src/core/include/mp-units/math.h</sourcePath>
      <lineNumber>125</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3XiPXSjoFmrqZA3npUJ69qVJNskR</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Both the quantity value and its quantity specification are the base of the operation.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Computes the square root of a quantity</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity The result of computation</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity being the base of the operation</literal>
          </text>
        </children>
        <name>q</name>
      </param>
    </params>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>sqrt(R)</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>Rep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
                  <identifier>quantity</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>R</value>
                    </constant>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Rep</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>q</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>requires(Rep v) { sqrt(v); }
#if MP_UNITS_HOSTED
           || requires(Rep v) { std::sqrt(v); }</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>unit_symbol</name>
  <anchor>unit_symbol</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_text.h</sourcePath>
      <lineNumber>246</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>v8rg9WykoLedQoXgKxawi1wCUgG</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Returns the textual symbol of a unit</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a view over the unit&apos;s symbol</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the unit to obtain the symbol of</literal>
          </text>
        </children>
        <name>u</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the formatting options to use</literal>
          </text>
        </children>
        <name>fmt</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the character type used to represent the symbol</literal>
          </text>
        </children>
        <name>CharT</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the unit to obtain the symbol of</literal>
          </text>
        </children>
        <name>U</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>479DxynkjrswieANT6sUuL6v9vKo</id>
          <identifier>basic_string_view</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>fmt</name>
        <default>
          <constant>
            <kind>constant</kind>
            <value>unit_symbol_formatting{}</value>
          </constant>
        </default>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>2JsunG93mWGvhraHopNZ5RNNVJUP</id>
                <identifier>unit_symbol_formatting</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>CharT</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <identifier>char</identifier>
                  </identifier>
                </name>
                <fundamentalType>char</fundamentalType>
              </named>
            </type>
          </type>
        </default>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
</function>
<function>
  <name>unit_symbol_to</name>
  <anchor>unit_symbol_to</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_text.h</sourcePath>
      <lineNumber>211</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4JoaYBaKCsrLXG7xgAsaVqkK9N4t</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Writes the textual symbol of a unit to an output iterator</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an iterator past the last character written</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the output iterator to write the symbol to</literal>
          </text>
        </children>
        <name>out</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the unit to obtain the symbol of</literal>
          </text>
        </children>
        <name>u</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the formatting options to use</literal>
          </text>
        </children>
        <name>fmt</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the character type used to represent the symbol</literal>
          </text>
        </children>
        <name>CharT</name>
      </tParam>
    </tparams>
  </doc>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>Out</identifier>
        </identifier>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Out</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>out</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u</name>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <id>2JsunG93mWGvhraHopNZ5RNNVJUP</id>
                  <identifier>unit_symbol_formatting</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>fmt</name>
      <default>unit_symbol_formatting{}</default>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>CharT</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <identifier>char</identifier>
                  </identifier>
                </name>
                <fundamentalType>char</fundamentalType>
              </named>
            </type>
          </type>
        </default>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Out</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>3iwafw1kmJffSaNg5VLe1fALFenr</id>
            <identifier>output_iterator</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                <identifier>std</identifier>
              </identifier>
            </prefix>
            <templateArgs>
              <type>
                <kind>type</kind>
                <type>
                  <named>
                    <kind>named</kind>
                    <name>
                      <identifier>
                        <kind>identifier</kind>
                        <identifier>CharT</identifier>
                      </identifier>
                    </name>
                  </named>
                </type>
              </type>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<overloads>
  <name>value_cast</name>
  <anchor>value_cast-03d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/value_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/value_cast.h</sourcePath>
      <lineNumber>189</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>rfS6pr4PGmhkuUFp3JhSNzFcWEn</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>value_cast</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> overloads</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity converted to quantity type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToQ</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity converted to representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity converted to unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToU</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point with its quantity-from-origin cast to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToQ</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point cast to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToQP</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point converted to representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point converted to unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToU</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity converted to unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToU</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point converted to unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToU</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity to cast</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an optional rounding policy (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>truncated</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> when not provided)</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point to cast</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a target quantity type to which to cast the representation</literal>
          </text>
        </children>
        <name>ToQ</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a representation type to use for a target quantity</literal>
          </text>
        </children>
        <name>ToRep</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit to use for a target quantity</literal>
          </text>
        </children>
        <name>ToU</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a target quantity point type to which to cast the representation of the point</literal>
          </text>
        </children>
        <name>ToQP</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <members>3Qh28JeJPHR3qQi3M6CdzQKrmqAd 228iwDnVFD4rL2PgWu4ye7ixBWMo 2UgzmvTgXei9Gg6kXFRzL9w19sJH UqtKpYJete2d7gGM27Ypco6wPsf jjkaaWCqwgqTcRkERw5i7M6tHs5 3imSVyQABZQbHp2D9Tyn9byFGzZr 3QpjPAgh25obCpcENHVxhp7vej39 3CcnRXreGC2wv2E7L1Lapziz4c2B 5Z9xPM9wChSNFqde5nsFmWEhN4z 4TPEMP69qWWCDevwAbjQSEMhV6ur 469es42x68xMhLuXwSvXT3Ab2fa2</members>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
</overloads>
<function>
  <name>value_cast</name>
  <anchor>value_cast-0ac</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/value_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/value_cast.h</sourcePath>
      <lineNumber>290</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3Qh28JeJPHR3qQi3M6CdzQKrmqAd</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Implicit conversions between quantities of different types are allowed only for &quot;safe&quot; (e.g. non-truncating) conversion. In truncating cases an explicit cast have to be used.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>using ToQ = quantity&lt;us, int&gt;; auto q = value_cast&lt;ToQ&gt;(1.23 * ms);</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Note that value_cast only changes the &quot;representation aspects&quot; (unit and representation type), but not the &quot;meaning&quot; (quantity type).</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Explicit cast of a quantity&apos;s representation</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity converted to quantity type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToQ</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity to cast</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an optional rounding policy (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>truncated</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> when not provided)</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a target quantity type to which to cast the representation</literal>
          </text>
        </children>
        <name>ToQ</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQ</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
      <default>Policy{}</default>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToQ</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>FwdQ</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2VSEeX5pPfQQcYBtyEpWPPwzChuv</id>
                    <identifier>truncated_t</identifier>
                  </identifier>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQ</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(ToQ::quantity_spec == Q::quantity_spec) &amp;&amp; UnitOf&lt;MP_UNITS_NONCONST_TYPE(ToQ::unit), Q::quantity_spec&gt; &amp;&amp;
          std::constructible_from&lt;typename ToQ::rep, typename Q::rep&gt; &amp;&amp;
          detail::ExplicitlyCastable&lt;Q::unit, ToQ::unit, typename ToQ::rep&gt; &amp;&amp;
          detail::ValidRoundingPolicyFor&lt;Policy, typename Q::rep, typename ToQ::rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>value_cast</name>
  <anchor>value_cast-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/value_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/value_cast.h</sourcePath>
      <lineNumber>213</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>228iwDnVFD4rL2PgWu4ye7ixBWMo</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Implicit conversions between quantities of different types are allowed only for &quot;safe&quot; (e.g. non-truncating) conversion. In truncating cases an explicit cast have to be used.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>auto q = value_cast&lt;int&gt;(1.23 * ms); auto r = value_cast&lt;int&gt;(1.55 * ms, rounded);</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Explicit cast of a quantity&apos;s representation type</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity converted to representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity to cast</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an optional rounding policy (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>truncated</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> when not provided)</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a representation type to use for a target quantity</literal>
          </text>
        </children>
        <name>ToRep</name>
      </tParam>
    </tparams>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity</literal>
        <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>Q::reference</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ToRep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQ</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
      <default>Policy{}</default>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>FwdQ</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2VSEeX5pPfQQcYBtyEpWPPwzChuv</id>
                    <identifier>truncated_t</identifier>
                  </identifier>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQ</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>RepresentationOf&lt;ToRep, Q::quantity_spec&gt; &amp;&amp; std::constructible_from&lt;ToRep, typename Q::rep&gt; &amp;&amp;
           detail::ValidRoundingPolicyFor&lt;Policy, typename Q::rep, ToRep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>value_cast</name>
  <anchor>value_cast-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/value_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/value_cast.h</sourcePath>
      <lineNumber>189</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2UgzmvTgXei9Gg6kXFRzL9w19sJH</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Implicit conversions between quantities of different types are allowed only for &quot;safe&quot; (e.g. non-truncating) conversion. In truncating cases an explicit cast have to be used.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>auto d = value_cast&lt;si::second&gt;(1234 * ms); auto e = value_cast&lt;si::second&gt;(1567 * ms, rounded);</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Explicit cast of a quantity&apos;s unit</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity converted to unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToU</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity to cast</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an optional rounding policy (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>truncated</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> when not provided)</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit to use for a target quantity</literal>
          </text>
        </children>
        <name>ToU</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQ</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
      <default>Policy{}</default>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>ToU</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>FwdQ</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2VSEeX5pPfQQcYBtyEpWPPwzChuv</id>
                    <identifier>truncated_t</identifier>
                  </identifier>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQ</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>UnitOf&lt;MP_UNITS_REMOVE_CONST(decltype(ToU)), Q::quantity_spec&gt; &amp;&amp;
           detail::ExplicitlyCastable&lt;Q::unit, ToU, typename Q::rep&gt; &amp;&amp;
           detail::ValidRoundingPolicyFor&lt;Policy, typename Q::rep, typename Q::rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>value_cast</name>
  <anchor>value_cast-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/value_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/value_cast.h</sourcePath>
      <lineNumber>420</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>UqtKpYJete2d7gGM27Ypco6wPsf</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Implicit conversions between quantities of different types are allowed only for &quot;safe&quot; (e.g. non-truncating) conversion. In truncating cases an explicit cast have to be used.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>inline constexpr struct A : absolute_point_origin</literal>
          </text>
          <link>
            <kind>link</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal> A;</literal>
              </text>
            </children>
          </link>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>using ToQ = quantity&lt;mm, int&gt;; auto qp = value_cast&lt;ToQ&gt;(quantity_point{1.23 * m});</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Note that value_cast only changes the &quot;representation aspects&quot; (unit and representation type), but not the &quot;meaning&quot; (quantity type or the actual point that is being described).</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Explicit cast of a quantity point&apos;s representation</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point with its quantity-from-origin cast to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToQ</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point to cast</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an optional rounding policy (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>truncated</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> when not provided)</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a target quantity type to which to cast the representation of the point</literal>
          </text>
        </children>
        <name>ToQ</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
          <identifier>QuantityPoint</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQP</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>qp</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
      <default>Policy{}</default>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToQ</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>FwdQP</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2VSEeX5pPfQQcYBtyEpWPPwzChuv</id>
                    <identifier>truncated_t</identifier>
                  </identifier>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQP</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
            <identifier>QuantityPoint</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(ToQ::quantity_spec == QP::quantity_spec) &amp;&amp; UnitOf&lt;MP_UNITS_NONCONST_TYPE(ToQ::unit), QP::quantity_spec&gt; &amp;&amp;
          std::constructible_from&lt;typename ToQ::rep, typename QP::rep&gt; &amp;&amp;
          detail::ExplicitlyCastable&lt;QP::unit, ToQ::unit, typename ToQ::rep&gt; &amp;&amp;
          detail::ValidRoundingPolicyFor&lt;Policy, typename QP::rep, typename ToQ::rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>value_cast</name>
  <anchor>value_cast-034</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/value_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/value_cast.h</sourcePath>
      <lineNumber>464</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>jjkaaWCqwgqTcRkERw5i7M6tHs5</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Implicit conversions between quantities of different types are allowed only for &quot;safe&quot; (e.g. non-truncating) conversion. In truncating cases an explicit cast have to be used.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>inline constexpr struct A : absolute_point_origin</literal>
          </text>
          <link>
            <kind>link</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal> A;</literal>
              </text>
            </children>
          </link>
          <text>
            <kind>text</kind>
            <literal> inline constexpr struct B : relative_point_origin</literal>
          </text>
          <link>
            <kind>link</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal> B;</literal>
              </text>
            </children>
          </link>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>using ToQP = quantity_point&lt;mm, B, int&gt;; auto qp = value_cast&lt;ToQP&gt;(quantity_point{1.23 * m});</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Note that value_cast only changes the &quot;representation aspects&quot; (unit, representation type and point origin), but not the &quot;meaning&quot; (quantity type or the actual point that is being described).</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Note also that changing the point origin bears risks regarding truncation and overflow similar to other casts that change representation (which is why we require a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>value_cast</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and disallow implicit conversions). This cast is guaranteed not to cause overflow of any intermediate representation type provided that the input quantity point is within the range of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToQP</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>. Calling </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>value_cast&lt;ToQP&gt;(qp)</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> on a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>qp</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> outside of the range of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToQP</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is potentially undefined behaviour. The implementation further attempts not to cause more than rounding error than approximately the sum of the resolution of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>qp</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> as represented in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>FromQP</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, plus the resolution of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>qp</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> as represented in </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToQP</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Explicit cast of a quantity point&apos;s representation, including potentially the point origin</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point cast to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToQP</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point to cast</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an optional rounding policy (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>truncated</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> when not provided)</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a target quantity point type to which to cast the representation of the point</literal>
          </text>
        </children>
        <name>ToQP</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
          <identifier>QuantityPoint</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQP</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>qp</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
      <default>Policy{}</default>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToQP</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
            <identifier>QuantityPoint</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>FwdQP</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2VSEeX5pPfQQcYBtyEpWPPwzChuv</id>
                    <identifier>truncated_t</identifier>
                  </identifier>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQP</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
            <identifier>QuantityPoint</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>(ToQP::quantity_spec == QP::quantity_spec) &amp;&amp; UnitOf&lt;MP_UNITS_NONCONST_TYPE(ToQP::unit), QP::quantity_spec&gt; &amp;&amp;
          (detail::same_absolute_point_origins(ToQP::point_origin, QP::point_origin)) &amp;&amp;
          std::constructible_from&lt;typename ToQP::rep, typename QP::rep&gt; &amp;&amp;
          detail::ExplicitlyCastable&lt;QP::unit, ToQP::unit, typename ToQP::rep&gt; &amp;&amp;
          detail::ValidRoundingPolicyFor&lt;Policy, typename QP::rep, typename ToQP::rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>value_cast</name>
  <anchor>value_cast-0c</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/value_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/value_cast.h</sourcePath>
      <lineNumber>338</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3imSVyQABZQbHp2D9Tyn9byFGzZr</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Implicit conversions between quantity points of different types are allowed only for &quot;safe&quot; (e.g. non-truncating) conversion. In truncating cases an explicit cast have to be used.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>auto qp = value_cast&lt;int&gt;(quantity_point{1.23 * ms});</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Explicit cast of a quantity point&apos;s representation type</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point converted to representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point to cast</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an optional rounding policy (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>truncated</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> when not provided)</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a representation type to use for a target quantity point</literal>
          </text>
        </children>
        <name>ToRep</name>
      </tParam>
    </tparams>
    <relates>
      <reference>
        <kind>reference</kind>
        <literal>quantity_point</literal>
        <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
      </reference>
    </relates>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
          <identifier>quantity_point</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>QP::reference</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>QP::point_origin</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>ToRep</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQP</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>qp</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
      <default>Policy{}</default>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>FwdQP</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2VSEeX5pPfQQcYBtyEpWPPwzChuv</id>
                    <identifier>truncated_t</identifier>
                  </identifier>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQP</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
            <identifier>QuantityPoint</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>RepresentationOf&lt;ToRep, QP::quantity_spec&gt; &amp;&amp; std::constructible_from&lt;ToRep, typename QP::rep&gt; &amp;&amp;
           detail::ValidRoundingPolicyFor&lt;Policy, typename QP::rep, ToRep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>value_cast</name>
  <anchor>value_cast-0ad</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/value_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/value_cast.h</sourcePath>
      <lineNumber>313</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3QpjPAgh25obCpcENHVxhp7vej39</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Implicit conversions between quantity points of different types are allowed only for &quot;safe&quot; (e.g. non-truncating) conversion. In truncating cases an explicit cast have to be used.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>auto qp = value_cast&lt;si::second&gt;(quantity_point{1234 * ms});</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Explicit cast of a quantity point&apos;s unit</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point converted to unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToU</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point to cast</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an optional rounding policy (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>truncated</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> when not provided)</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit to use for a target quantity point</literal>
          </text>
        </children>
        <name>ToU</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
          <identifier>QuantityPoint</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQP</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>qp</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
      <default>Policy{}</default>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>ToU</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>FwdQP</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2VSEeX5pPfQQcYBtyEpWPPwzChuv</id>
                    <identifier>truncated_t</identifier>
                  </identifier>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQP</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
            <identifier>QuantityPoint</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>UnitOf&lt;MP_UNITS_REMOVE_CONST(decltype(ToU)), QP::quantity_spec&gt; &amp;&amp;
           detail::ExplicitlyCastable&lt;QP::unit, ToU, typename QP::rep&gt; &amp;&amp;
           detail::ValidRoundingPolicyFor&lt;Policy, typename QP::rep, typename QP::rep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>value_cast</name>
  <anchor>value_cast-09</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/value_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/value_cast.h</sourcePath>
      <lineNumber>261</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>3CcnRXreGC2wv2E7L1Lapziz4c2B</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Implicit conversions between quantities of different types are allowed only for &quot;safe&quot; (e.g. non-truncating) conversion. In truncating cases an explicit cast have to be used.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>auto q = value_cast&lt;int, us&gt;(1.23 * ms);</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Explicit cast of a quantity&apos;s representation type and unit</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity converted to unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToU</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity to cast</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an optional rounding policy (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>truncated</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> when not provided)</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a representation type to use for the target quantity</literal>
          </text>
        </children>
        <name>ToRep</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit to use for the target quantity</literal>
          </text>
        </children>
        <name>ToU</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQ</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
      <default>Policy{}</default>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>ToU</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>FwdQ</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2VSEeX5pPfQQcYBtyEpWPPwzChuv</id>
                    <identifier>truncated_t</identifier>
                  </identifier>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQ</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>UnitOf&lt;MP_UNITS_REMOVE_CONST(decltype(ToU)), Q::quantity_spec&gt; &amp;&amp;
           RepresentationOf&lt;ToRep, Q::quantity_spec&gt; &amp;&amp; std::constructible_from&lt;ToRep, typename Q::rep&gt; &amp;&amp;
           detail::ExplicitlyCastable&lt;Q::unit, ToU, ToRep&gt; &amp;&amp;
           detail::ValidRoundingPolicyFor&lt;Policy, typename Q::rep, ToRep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>value_cast</name>
  <anchor>value_cast-00</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/value_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/value_cast.h</sourcePath>
      <lineNumber>235</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>5Z9xPM9wChSNFqde5nsFmWEhN4z</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Implicit conversions between quantities of different types are allowed only for &quot;safe&quot; (e.g. non-truncating) conversion. In truncating cases an explicit cast have to be used.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>auto q = value_cast&lt;us, int&gt;(1.23 * ms);</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Explicit cast of a quantity&apos;s unit and representation type</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity converted to unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToU</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity to cast</literal>
          </text>
        </children>
        <name>q</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an optional rounding policy (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>truncated</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> when not provided)</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit to use for the target quantity</literal>
          </text>
        </children>
        <name>ToU</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a representation type to use for the target quantity</literal>
          </text>
        </children>
        <name>ToRep</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
          <identifier>Quantity</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQ</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
      <default>Policy{}</default>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>ToU</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>FwdQ</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2VSEeX5pPfQQcYBtyEpWPPwzChuv</id>
                    <identifier>truncated_t</identifier>
                  </identifier>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQ</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>UnitOf&lt;MP_UNITS_REMOVE_CONST(decltype(ToU)), Q::quantity_spec&gt; &amp;&amp;
           RepresentationOf&lt;ToRep, Q::quantity_spec&gt; &amp;&amp; std::constructible_from&lt;ToRep, typename Q::rep&gt; &amp;&amp;
           detail::ExplicitlyCastable&lt;Q::unit, ToU, ToRep&gt; &amp;&amp;
           detail::ValidRoundingPolicyFor&lt;Policy, typename Q::rep, ToRep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>value_cast</name>
  <anchor>value_cast-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/value_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/value_cast.h</sourcePath>
      <lineNumber>390</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>4TPEMP69qWWCDevwAbjQSEMhV6ur</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Implicit conversions between quantity points of different types are allowed only for &quot;safe&quot; (e.g. non-truncating) conversion. In truncating cases an explicit cast have to be used.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>auto qp = value_cast&lt;int, us&gt;(quantity_point{1.23 * ms});</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Explicit cast of a quantity point&apos;s representation type and unit</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point converted to unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToU</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point to cast</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an optional rounding policy (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>truncated</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> when not provided)</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a representation type to use for the target quantity</literal>
          </text>
        </children>
        <name>ToRep</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit to use for the target quantity</literal>
          </text>
        </children>
        <name>ToU</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
          <identifier>QuantityPoint</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQP</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>qp</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
      <default>Policy{}</default>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>ToU</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>FwdQP</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2VSEeX5pPfQQcYBtyEpWPPwzChuv</id>
                    <identifier>truncated_t</identifier>
                  </identifier>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQP</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
            <identifier>QuantityPoint</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>UnitOf&lt;MP_UNITS_REMOVE_CONST(decltype(ToU)), QP::quantity_spec&gt; &amp;&amp;
           RepresentationOf&lt;ToRep, QP::quantity_spec&gt; &amp;&amp; std::constructible_from&lt;ToRep, typename QP::rep&gt; &amp;&amp;
           detail::ExplicitlyCastable&lt;QP::unit, ToU, ToRep&gt; &amp;&amp;
           detail::ValidRoundingPolicyFor&lt;Policy, typename QP::rep, ToRep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>value_cast</name>
  <anchor>value_cast-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/value_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/value_cast.h</sourcePath>
      <lineNumber>363</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>469es42x68xMhLuXwSvXT3Ab2fa2</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Implicit conversions between quantities of different types are allowed only for &quot;safe&quot; (e.g. non-truncating) conversion. In truncating cases an explicit cast have to be used.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>auto qp = value_cast&lt;us, int&gt;(quantity_point{1.23 * ms});</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Explicit cast of a quantity point&apos;s unit and representation type</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point converted to unit </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToU</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and representation type </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity point to cast</literal>
          </text>
        </children>
        <name>qp</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>an optional rounding policy (</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>truncated</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> when not provided)</literal>
          </text>
        </children>
        <name>policy</name>
      </param>
    </params>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a unit to use for the target quantity</literal>
          </text>
        </children>
        <name>ToU</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a representation type to use for the target quantity</literal>
          </text>
        </children>
        <name>ToRep</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
          <identifier>QuantityPoint</identifier>
        </identifier>
      </constraint>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <rValueReference>
          <kind>rvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <identifier>
                  <kind>identifier</kind>
                  <identifier>FwdQP</identifier>
                </identifier>
              </name>
            </named>
          </pointeeType>
        </rValueReference>
      </type>
      <name>qp</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Policy</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>policy</name>
      <default>Policy{}</default>
    </param>
  </params>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>ToU</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>FwdQP</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Policy</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2VSEeX5pPfQQcYBtyEpWPPwzChuv</id>
                    <identifier>truncated_t</identifier>
                  </identifier>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
            <identifier>RoundingPolicy</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <default>
          <type>
            <kind>type</kind>
            <type>
              <named>
                <kind>named</kind>
                <name>
                  <specialization>
                    <kind>specialization</kind>
                    <id>4NEHoWtiFPP87c8VkiiL3ou5wAtq</id>
                    <identifier>remove_cvref_t</identifier>
                    <prefix>
                      <identifier>
                        <kind>identifier</kind>
                        <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                        <identifier>std</identifier>
                      </identifier>
                    </prefix>
                    <templateArgs>
                      <type>
                        <kind>type</kind>
                        <type>
                          <named>
                            <kind>named</kind>
                            <name>
                              <identifier>
                                <kind>identifier</kind>
                                <identifier>FwdQP</identifier>
                              </identifier>
                            </name>
                          </named>
                        </type>
                      </type>
                    </templateArgs>
                  </specialization>
                </name>
              </named>
            </type>
          </type>
        </default>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
            <identifier>QuantityPoint</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
    <requires>UnitOf&lt;MP_UNITS_REMOVE_CONST(decltype(ToU)), QP::quantity_spec&gt; &amp;&amp;
           RepresentationOf&lt;ToRep, QP::quantity_spec&gt; &amp;&amp; std::constructible_from&lt;ToRep, typename QP::rep&gt; &amp;&amp;
           detail::ExplicitlyCastable&lt;QP::unit, ToU, ToRep&gt; &amp;&amp;
           detail::ValidRoundingPolicyFor&lt;Policy, typename QP::rep, ToRep&gt;</requires>
  </template>
  <funcClass>normal</funcClass>
  <constexpr>constexpr</constexpr>
</function>
<function>
  <name>operator&lt;&lt;</name>
  <anchor>operator_lshift</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>350</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>bGpQTmcVpVMar8cd4rdqjGCcEFj</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Streams the textual symbol of a dimension to a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::basic_ostream</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>os</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the output stream to write to</literal>
          </text>
        </children>
        <name>os</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the dimension to render</literal>
          </text>
        </children>
        <name>d</name>
      </param>
    </params>
  </doc>
  <returnType>
    <lValueReference>
      <kind>lvalue-reference</kind>
      <pointeeType>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>25SvzRR2ZNJzQSA1GeqWrnSoTQS9</id>
              <identifier>basic_ostream</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>CharT</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Traits</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </pointeeType>
    </lValueReference>
  </returnType>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>25SvzRR2ZNJzQSA1GeqWrnSoTQS9</id>
                  <identifier>basic_ostream</identifier>
                  <prefix>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                      <identifier>std</identifier>
                    </identifier>
                  </prefix>
                  <templateArgs>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>CharT</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                    <type>
                      <kind>type</kind>
                      <type>
                        <named>
                          <kind>named</kind>
                          <name>
                            <identifier>
                              <kind>identifier</kind>
                              <identifier>Traits</identifier>
                            </identifier>
                          </name>
                        </named>
                      </type>
                    </type>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
      <name>os</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>D</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>d</name>
    </param>
  </params>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>CharT</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Traits</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>D</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
            <identifier>Unit</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <funcClass>normal</funcClass>
  <overloadedOperator>&lt;&lt;</overloadedOperator>
</function>
<overloads>
  <name>operator==</name>
  <anchor>operator_eq-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_character.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
      <lineNumber>183</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>overloads</kind>
  <id>3PxGaVahysPWH4ULdwCjvPwsGtBA</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Equality operators</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the lexicographic ordering of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the reference&apos;s quantity specification and unit match those implied by </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u2</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if both the quantity specifications and the units are equal</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first quantity character to compare</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second quantity character to compare</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to compare</literal>
          </text>
        </children>
        <name>r</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the unit to compare against</literal>
          </text>
        </children>
        <name>u2</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the first reference to compare</literal>
          </text>
        </children>
        <name>r1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the other reference to compare against</literal>
          </text>
        </children>
        <name>r2</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <funcClass>normal</funcClass>
  <overloadedOperator>==</overloadedOperator>
  <members>5c6rxDcpk9TijRZBctyXozgy8pp fbPbreiwgTvf8AcVNc1KtxMXMDJ 2aRNLY2Weo3oCYppaqAPSQhphCZm</members>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
</overloads>
<function>
  <name>operator==</name>
  <anchor>operator_eq-02</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>123</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>fbPbreiwgTvf8AcVNc1KtxMXMDJ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether a reference is equal to a unit</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if the reference&apos;s quantity specification and unit match those implied by </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>u2</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to compare</literal>
          </text>
        </children>
        <name>r</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the unit to compare against</literal>
          </text>
        </children>
        <name>u2</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>U2</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>u2</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<function>
  <name>operator==</name>
  <anchor>operator_eq-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/reference.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/reference.h</sourcePath>
      <lineNumber>110</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>2aRNLY2Weo3oCYppaqAPSQhphCZm</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Checks whether two references are equal</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> if both the quantity specifications and the units are equal</literal>
          </text>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the first reference to compare</literal>
          </text>
        </children>
        <name>r1</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the other reference to compare against</literal>
          </text>
        </children>
        <name>r2</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>r1</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>3UwtV51GUEtJ8ECZKzaBygDyBV2w</id>
              <identifier>reference</identifier>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Q2</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>U2</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
      <name>r2</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <constexpr>consteval</constexpr>
  <overloadedOperator>==</overloadedOperator>
</function>
<function>
  <name>operator&lt;=&gt;</name>
  <anchor>operator_3way</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_character.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_character.h</sourcePath>
      <lineNumber>183</lineNumber>
      <columnNumber>3</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>function</kind>
  <id>Hm3RJGbL47k8d34w8Joh4c8zGCZ</id>
  <access>public</access>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Compares two quantity characters lexicographically on (order, field)</literal>
        </text>
      </children>
    </brief>
    <returns>
      <returns>
        <kind>returns</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the lexicographic ordering of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>lhs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rhs</literal>
              </text>
            </children>
          </code>
        </children>
      </returns>
    </returns>
    <params>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>first quantity character to compare</literal>
          </text>
        </children>
        <name>lhs</name>
      </param>
      <param>
        <kind>param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>second quantity character to compare</literal>
          </text>
        </children>
        <name>rhs</name>
      </param>
    </params>
  </doc>
  <attributes>
    <nodiscard>
      <kind>nodiscard</kind>
      <name>nodiscard</name>
    </nodiscard>
  </attributes>
  <returnType>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </returnType>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2Hv491FBzUHufEgtmwfLXcRMayVd</id>
              <identifier>quantity_character</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>lhs</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>2Hv491FBzUHufEgtmwfLXcRMayVd</id>
              <identifier>quantity_character</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>rhs</name>
    </param>
  </params>
  <funcClass>normal</funcClass>
  <isDefaulted/>
  <isExplicitlyDefaulted/>
  <constexpr>constexpr</constexpr>
  <overloadedOperator>&lt;=&gt;</overloadedOperator>
</function>
<variable>
  <name>dimension_one</name>
  <anchor>dimension_one-060</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/dimension.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/dimension.h</sourcePath>
      <lineNumber>201</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2MNZoEMpkUw67w2hyRdFFCXqtKRt</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The unique instance of the dimension one.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2PgZ2ZAgs8odUE9ySmHXm77T49w4</id>
          <identifier>dimension_one</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>dimensionless</name>
  <anchor>dimensionless-03</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>694</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>mF3qmfoLxKv7FAJHnjjnkCe7Lcz</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantity of dimension one also commonly named as &quot;dimensionless&quot; is a quantity with a dimension for which all the exponents of the factors corresponding to the base dimensions are zero.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Quantity of dimension one</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>4QbdSnSogncVTvJJWScyAvQBwvux</id>
          <identifier>dimensionless</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>disable_representation</name>
  <anchor>disable_representation-091</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>492</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>32qrBCEvMbzW4zKqVvJcTWKmg6a2</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A specializable opt-out: when </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>true</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is not accepted as a quantity representation.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the representation type being checked</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <initializer>detail::is_quantity_abstraction&lt;detail::value_type_t&lt;T&gt;&gt;</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>disable_representation</name>
  <anchor>disable_representation-09a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>496</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>39sfVBiQRju7zmfoQzqBSfJ4wP5Z</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Opts </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>bool</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> out of being a valid quantity representation.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <args>
      <type>
        <kind>type</kind>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>bool</identifier>
              </identifier>
            </name>
            <fundamentalType>bool</fundamentalType>
          </named>
        </type>
      </type>
    </args>
  </template>
  <initializer>true</initializer>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>disable_representation</name>
  <anchor>disable_representation-05</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>510</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>29TFvBQ4BLav1fQXA4fajEma7noF</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Opts stateless symbolic-constant tag types out of being a valid quantity representation.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a symbolic-constant tag type</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>46GLudu9ZqoMXDkSZbfThBPe2yPQ</id>
            <identifier>SymbolicConstant</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                <identifier>detail</identifier>
              </identifier>
            </prefix>
          </identifier>
        </constraint>
      </type>
    </params>
    <args>
      <type>
        <kind>type</kind>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>T</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </type>
    </args>
  </template>
  <initializer>true</initializer>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>frame_projection</name>
  <anchor>frame_projection</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point_concepts.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point_concepts.h</sourcePath>
      <lineNumber>67</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4KiupGUWXReHg1fSmw2VUaHjXjmy</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Connects pairs of absolute point origin values with user-supplied callables. Specialize per (From, To) pair with a callable invocable as: frame_projection&lt;From, To&gt;(quantity_point_at_From, extra_args...) -&gt; quantity_point_at_To</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Both directions must be explicitly specialized — the library never derives an inverse. The primary template defaults to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>utility::unspecified_t{}</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> so that </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>detail::HasFrameProjection</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> can detect whether a specialization exists.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>User-specializable variable template for runtime coordinate frame transformations.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>ktnRPuWZy1tNGnc2XX5w6ozA1h3</id>
          <identifier>unspecified_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2HniVS23jfsJhnimKmHvULUT12dS</id>
              <identifier>utility</identifier>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>From</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2LeHToFYu4KtmBngvtbRipYmKBa4</id>
                <identifier>AbsolutePointOrigin</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>To</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2LeHToFYu4KtmBngvtbRipYmKBa4</id>
                <identifier>AbsolutePointOrigin</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
    <requires>(From != To)</requires>
  </template>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>imag</name>
  <anchor>imag</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>269</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3tJw95DxxTCcQ1ThtVG6ij7v9Bi1</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Customization point object returning the imaginary part of a complex-like value.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>hBx82X2UUzXZvPMZ9orwAqBi2Te</id>
          <identifier>imag_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>wd3htwxVmgrt5GMABTDAY4qHd6q</id>
              <identifier>imag_impl</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                  <prefix>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2qo2BEJhYin8Wk3HYFXENwuXWSUe</id>
                      <identifier>mp_units</identifier>
                    </identifier>
                  </prefix>
                </identifier>
              </prefix>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>implicitly_scalable</name>
  <anchor>implicitly_scalable</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/value_cast.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/value_cast.h</sourcePath>
      <lineNumber>171</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>29Gz8L1R6dJxbQVzd4sGb44DcFQK</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>The default is </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>true</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> iff the scaling is non-truncating: either </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ToRep</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is floating-point, or both reps are non-floating-point and the unit magnitude ratio is an integral factor.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Specialize this variable template to customize the implicit/explicit decision for your own representation types.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Controls whether conversion from </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity&lt;FromUnit, FromRep&gt;</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> to </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity&lt;ToUnit, ToRep&gt;</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is implicit or explicit.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the source unit value (NTTP)</literal>
          </text>
        </children>
        <name>FromUnit</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the source representation type</literal>
          </text>
        </children>
        <name>FromRep</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target unit value (NTTP)</literal>
          </text>
        </children>
        <name>ToUnit</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the target representation type</literal>
          </text>
        </children>
        <name>ToRep</name>
      </tParam>
    </tparams>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>FromUnit</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>FromRep</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>ToUnit</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>ToRep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <initializer>treat_as_floating_point&lt;ToRep&gt; || (!treat_as_floating_point&lt;FromRep&gt; &amp;&amp; is_integral_scaling(FromUnit, ToUnit))</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>is_complex</name>
  <anchor>is_complex</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>558</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>TNfELqJJa5JXAUE4xTyuaa58urH</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated, no longer necessary; kept only for backward compatibility.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a representation type</literal>
          </text>
        </children>
        <name>Rep</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.5.0: `is_complex` is no longer necessary and can simply be removed&quot;</string>
      </balancedTokens>
      <message>2.5.0: `is_complex` is no longer necessary and can simply be removed</message>
    </deprecated>
  </attributes>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <initializer>false</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>is_derived_from_specialization_of</name>
  <anchor>is_derived_from_specialization_of</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>99</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>45cmjX4pHWyJtuL8dwdoB1MpEvcr</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Whether </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is derived from some specialization of the class template </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Type</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, which takes type parameters</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <template>
        <kind>template</kind>
        <name>Type</name>
        <params>
          <type>
            <kind>type</kind>
            <isParameterPack/>
            <keyKind>typename</keyKind>
          </type>
        </params>
      </template>
    </params>
  </template>
  <initializer>requires(T* t) { detail::to_base_specialization_of&lt;Type&gt;(t); }</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>is_derived_from_specialization_of_v</name>
  <anchor>is_derived_from_specialization_of_v</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>103</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2FyZqWUd1u3Gw2yp3izeoGmaq4YJ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Whether </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is derived from some specialization of the class template </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Type</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, which takes non-type (</literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>auto</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>) parameters</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <template>
        <kind>template</kind>
        <name>Type</name>
        <params>
          <constant>
            <kind>constant</kind>
            <isParameterPack/>
            <type>
              <auto>
                <kind>auto</kind>
                <keyword>auto</keyword>
              </auto>
            </type>
          </constant>
        </params>
      </template>
    </params>
  </template>
  <initializer>requires(T* t) { detail::to_base_specialization_of_v&lt;Type&gt;(t); }</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>is_kind</name>
  <anchor>is_kind-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>342</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3U4zaQxtcn1GbEMeWs4SX3d9vnKE</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The unique instance of the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>is_kind</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> tag property.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2MB3ehy1cfTaE6w5x5U3P5G8RCQo</id>
          <identifier>is_kind</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>is_scalar</name>
  <anchor>is_scalar</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>549</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2yXjzq78SsvzhygLa4Mr4yWC8pm3</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated, no longer necessary; kept only for backward compatibility.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a representation type</literal>
          </text>
        </children>
        <name>Rep</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.5.0: `is_scalar` is no longer necessary and can simply be removed&quot;</string>
      </balancedTokens>
      <message>2.5.0: `is_scalar` is no longer necessary and can simply be removed</message>
    </deprecated>
  </attributes>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <initializer>false</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>is_scoped_enum_v</name>
  <anchor>is_scoped_enum_v</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>111</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2WgpuWZnD8KYsTNoUApcZ3R7uxeb</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Whether </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is a scoped enumeration type</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>class</keyKind>
      </type>
    </params>
  </template>
  <initializer>std::is_scoped_enum_v&lt;T&gt;</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>is_specialization_of</name>
  <anchor>is_specialization_of-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>70</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2LdEXrAUap58sS72vKxjaPhwH6LZ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Whether </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is a specialization of the class template </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Type</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, which takes a pack of type parameters</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <template>
        <kind>template</kind>
        <name>Type</name>
        <params>
          <type>
            <kind>type</kind>
            <isParameterPack/>
            <keyKind>typename</keyKind>
          </type>
        </params>
      </template>
    </params>
  </template>
  <initializer>false</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>is_specialization_of</name>
  <anchor>is_specialization_of-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>74</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3fdMMKr3p4DT1eQn9WmYrkMRDMVK</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specialization confirming that </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Type&lt;Params...&gt;</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is a specialization of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Type</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Params</name>
        <isParameterPack/>
        <keyKind>typename</keyKind>
      </type>
      <template>
        <kind>template</kind>
        <name>Type</name>
        <params>
          <type>
            <kind>type</kind>
            <isParameterPack/>
            <keyKind>typename</keyKind>
          </type>
        </params>
      </template>
    </params>
    <args>
      <type>
        <kind>type</kind>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <specialization>
                <kind>specialization</kind>
                <identifier>Type</identifier>
                <templateArgs>
                  <type>
                    <kind>type</kind>
                    <isPackExpansion/>
                    <type>
                      <named>
                        <kind>named</kind>
                        <name>
                          <identifier>
                            <kind>identifier</kind>
                            <identifier>Params</identifier>
                          </identifier>
                        </name>
                      </named>
                    </type>
                  </type>
                </templateArgs>
              </specialization>
            </name>
          </named>
        </type>
      </type>
      <template>
        <kind>template</kind>
        <name>Type</name>
      </template>
    </args>
  </template>
  <initializer>true</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>is_specialization_of_v</name>
  <anchor>is_specialization_of_v-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>78</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>K1WbBtRqsfpWQLNorU716mA1nr1</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Whether </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>T</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is a specialization of the class template </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Type</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>, which takes a pack of non-type (</literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>auto</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>) parameters</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <template>
        <kind>template</kind>
        <name>Type</name>
        <params>
          <constant>
            <kind>constant</kind>
            <isParameterPack/>
            <type>
              <auto>
                <kind>auto</kind>
                <keyword>auto</keyword>
              </auto>
            </type>
          </constant>
        </params>
      </template>
    </params>
  </template>
  <initializer>false</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>is_specialization_of_v</name>
  <anchor>is_specialization_of_v-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/ext/type_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/ext/type_traits.h</sourcePath>
      <lineNumber>82</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>31ELxnmmay27GnJurh9W3HqxicAd</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specialization confirming that </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Type&lt;Params...&gt;</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> is a specialization of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Type</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Params</name>
        <isParameterPack/>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
      <template>
        <kind>template</kind>
        <name>Type</name>
        <params>
          <constant>
            <kind>constant</kind>
            <isParameterPack/>
            <type>
              <auto>
                <kind>auto</kind>
                <keyword>auto</keyword>
              </auto>
            </type>
          </constant>
        </params>
      </template>
    </params>
    <args>
      <type>
        <kind>type</kind>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <specialization>
                <kind>specialization</kind>
                <identifier>Type</identifier>
                <templateArgs>
                  <constant>
                    <kind>constant</kind>
                    <isPackExpansion/>
                    <value>Params</value>
                  </constant>
                </templateArgs>
              </specialization>
            </name>
          </named>
        </type>
      </type>
      <template>
        <kind>template</kind>
        <name>Type</name>
      </template>
    </args>
  </template>
  <initializer>true</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>is_tensor</name>
  <anchor>is_tensor</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>576</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>NpXbppwUg4zTUPy8JsDpCYi1EaQ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated, no longer necessary; kept only for backward compatibility.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a representation type</literal>
          </text>
        </children>
        <name>Rep</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.5.0: `is_tensor` is no longer necessary and can simply be removed&quot;</string>
      </balancedTokens>
      <message>2.5.0: `is_tensor` is no longer necessary and can simply be removed</message>
    </deprecated>
  </attributes>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <initializer>false</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>is_value_preserving</name>
  <anchor>is_value_preserving</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>540</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3nzccgBXH5LYQbXfRThnDcQCKtGH</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specifies if a specific conversion between two types is representable without data loss</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a source representation type</literal>
          </text>
        </children>
        <name>From</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a destination representation type</literal>
          </text>
        </children>
        <name>To</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: Use `mp_units::implicitly_scalable` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: Use `mp_units::implicitly_scalable` instead</message>
    </deprecated>
  </attributes>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>From</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>To</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <initializer>treat_as_floating_point&lt;To&gt; || !treat_as_floating_point&lt;From&gt;</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>is_vector</name>
  <anchor>is_vector</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>567</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>81qNRXQDJ8WaBWwARLf8Yj18VYu</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated, no longer necessary; kept only for backward compatibility.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a representation type</literal>
          </text>
        </children>
        <name>Rep</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.5.0: `is_vector` is no longer necessary and can simply be removed&quot;</string>
      </balancedTokens>
      <message>2.5.0: `is_vector` is no longer necessary and can simply be removed</message>
    </deprecated>
  </attributes>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <initializer>false</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>kind_of</name>
  <anchor>kind_of</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>737</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>421q9iRdZJ3Zv7oJ7Sszre5u29n7</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The quantity kind of the hierarchy tree rooted at the quantity specification </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>Q</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the root quantity specification of the kind</literal>
          </text>
        </children>
        <name>Q</name>
      </tParam>
    </tparams>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>17kXrMsiY1yJcrB1zmdHp8jnWh8</id>
          <identifier>kind_of_</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <decltype>
                  <kind>decltype</kind>
                  <operand>Q</operand>
                </decltype>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Q</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
                <identifier>QuantitySpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
    <requires>requires { typename kind_of_&lt;decltype(Q)&gt;; }</requires>
  </template>
  <isConstexpr/>
</variable>
<variable>
  <name>known_first_factor</name>
  <anchor>known_first_factor</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_magnitude.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_magnitude.h</sourcePath>
      <lineNumber>71</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>fJrsSvUwAurVpVCcNDxTUP7UPrg</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated placeholder retained for source compatibility</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the value that was previously being factorized</literal>
          </text>
        </children>
        <name>N</name>
      </tParam>
    </tparams>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.5.0: `known_first_factor` is no longer necessary and can simply be removed&quot;</string>
      </balancedTokens>
      <message>2.5.0: `known_first_factor` is no longer necessary and can simply be removed</message>
    </deprecated>
  </attributes>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>Q5qkCwf6XjDZbYZWn2fGK58ZbpU</id>
          <identifier>optional</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <id>3VMt99Wp744j4oYDKzuM6GMAkVHe</id>
                      <identifier>intmax_t</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>N</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>3VMt99Wp744j4oYDKzuM6GMAkVHe</id>
                <identifier>intmax_t</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
  </template>
  <initializer>std::nullopt</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>mag</name>
  <anchor>mag-03</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_magnitude.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_magnitude.h</sourcePath>
      <lineNumber>81</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>jkctn2VUXG61LNNoGkhPD5ywJSv</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A Magnitude constant equal to the value </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>V</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>xKAh8ftVFPPg9yHq2Nj39wmoCFd</id>
          <identifier>UnitMagnitude</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>detail::make_magnitude&lt;V&gt;()</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>mag</name>
  <anchor>mag-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_magnitude.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_magnitude.h</sourcePath>
      <lineNumber>79</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2y8zYScRPPyiaJJ4diNVENTCUPGm</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A Magnitude constant equal to the value </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>V</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>xKAh8ftVFPPg9yHq2Nj39wmoCFd</id>
          <identifier>UnitMagnitude</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>V</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>48GZWczbXA57B412bfUGL8jrWaPY</id>
                <identifier>MagArg</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
    <requires>detail::is_nonzero_mag_arg&lt;V&gt;</requires>
  </template>
  <initializer>detail::make_magnitude&lt;V&gt;()</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>mag_pi</name>
  <anchor>mag_pi</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_magnitude.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_magnitude.h</sourcePath>
      <lineNumber>135</lineNumber>
      <columnNumber>48</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3jUubaDc1h5MDebpKUN2yE1XDz8r</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated alias for the pi Magnitude constant</literal>
        </text>
      </children>
    </brief>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.3.0: Use `mag&lt;pi&gt;` instead&quot;</string>
      </balancedTokens>
      <message>2.3.0: Use `mag&lt;pi&gt;` instead</message>
    </deprecated>
  </attributes>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>xKAh8ftVFPPg9yHq2Nj39wmoCFd</id>
          <identifier>UnitMagnitude</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <initializer>mag&lt;pi_c&gt;</initializer>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>mag_power</name>
  <anchor>mag_power</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_magnitude.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_magnitude.h</sourcePath>
      <lineNumber>113</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>47UFrkHSFY4VJzqeSAP6QiJ3Ty3k</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Create a Magnitude which is some rational number raised to a rational power.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>xKAh8ftVFPPg9yHq2Nj39wmoCFd</id>
          <identifier>UnitMagnitude</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>Base</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>48GZWczbXA57B412bfUGL8jrWaPY</id>
                <identifier>MagArg</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>Num</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>int</identifier>
              </identifier>
            </name>
            <fundamentalType>int</fundamentalType>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>Den</name>
        <default>
          <constant>
            <kind>constant</kind>
            <value>1</value>
          </constant>
        </default>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>int</identifier>
              </identifier>
            </name>
            <fundamentalType>int</fundamentalType>
          </named>
        </type>
      </constant>
    </params>
    <requires>detail::is_positive_mag_arg&lt;Base&gt;</requires>
  </template>
  <initializer>pow&lt;Num, Den&gt;(mag&lt;Base&gt;)</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>mag_ratio</name>
  <anchor>mag_ratio</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_magnitude.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_magnitude.h</sourcePath>
      <lineNumber>105</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2ssoVC7xoRRnU91ZRizFXLwhiWo</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A Magnitude constant equal to the rational number </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>N</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> / </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>D</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
      <constraint>
        <identifier>
          <kind>identifier</kind>
          <id>xKAh8ftVFPPg9yHq2Nj39wmoCFd</id>
          <identifier>UnitMagnitude</identifier>
        </identifier>
      </constraint>
    </auto>
  </type>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>N</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>3VMt99Wp744j4oYDKzuM6GMAkVHe</id>
                <identifier>intmax_t</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>D</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>3VMt99Wp744j4oYDKzuM6GMAkVHe</id>
                <identifier>intmax_t</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
    <requires>(N != 0)</requires>
  </template>
  <initializer>detail::make_magnitude&lt;detail::ratio{N, D}&gt;()</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>magnitude</name>
  <anchor>magnitude</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/representation_concepts.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/representation_concepts.h</sourcePath>
      <lineNumber>228</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>hvDE2ksJ3JR9GA2chCLQZBYHSYt</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Dispatches to a member </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>magnitude()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>/</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>norm()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>/</literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>abs()</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, a matching ADL call, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>std::abs</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, or the complex </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>modulus</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, depending on which of those the argument type supports.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Customization point object computing the magnitude of a representation value</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>36gnDUzpYZqsPgbJAESzPMaK6juY</id>
          <identifier>magnitude_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>4QgmQL7HgFuz5suC8oXQnZ4hyk7N</id>
              <identifier>magnitude_impl</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                  <prefix>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2qo2BEJhYin8Wk3HYFXENwuXWSUe</id>
                      <identifier>mp_units</identifier>
                    </identifier>
                  </prefix>
                </identifier>
              </prefix>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>modulus</name>
  <anchor>modulus</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>301</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2dTj4QRB75caBtHfhCTorEKNk7RX</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Customization point object returning the modulus (absolute value) of a complex-like value.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2o91hAMxFbs5R2q4jGDs8F1TmNDu</id>
          <identifier>modulus_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>4SHaht91AyUU5fVuBRK3uM9dQ3Cc</id>
              <identifier>modulus_impl</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                  <prefix>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2qo2BEJhYin8Wk3HYFXENwuXWSUe</id>
                      <identifier>mp_units</identifier>
                    </identifier>
                  </prefix>
                </identifier>
              </prefix>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>natural_point_origin</name>
  <anchor>natural_point_origin</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>269</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4CQftFWdXb2iR5J64x5LStnX872x</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The point origin located at the zero point of a quantity specification</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>quantity specification of the quantities measured from this origin</literal>
          </text>
        </children>
        <name>QS</name>
      </tParam>
    </tparams>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>3r2vXYd3SPieRgasCwgJtKMR29CX</id>
          <identifier>natural_point_origin_</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>QS</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
                <identifier>QuantitySpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <isConstexpr/>
</variable>
<variable>
  <name>non_negative</name>
  <anchor>non_negative-0d</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>346</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>46FCu6CLA4DBFH2FejLpnJagfwMV</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The unique instance of the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>non_negative</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> tag property.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2Hqo1c6uBRBLNip9ef8ZygpVS8wN</id>
          <identifier>non_negative</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>numeric_field</name>
  <anchor>numeric_field-06</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>458</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2MSP6Q5UkifWCXv5iES6i7ZrhqFX</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The numeric field of a representation type: real or complex.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the representation type</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>ktnRPuWZy1tNGnc2XX5w6ozA1h3</id>
          <identifier>unspecified_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2HniVS23jfsJhnimKmHvULUT12dS</id>
              <identifier>utility</identifier>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <isConstexpr/>
</variable>
<variable>
  <name>numeric_field</name>
  <anchor>numeric_field-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>466</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2zx963upErE2NKwB6xCFtP7PG2AJ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Detects </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>numeric_field</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> for a type whose tensor order is known and whose field is consistent.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the representation type</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>NDjCLK6Czy4KDn8XVDNpzkhL9BM</id>
          <identifier>quantity_field</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <args>
      <type>
        <kind>type</kind>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>T</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </type>
    </args>
    <requires>detail::field_consistent&lt;T&gt;</requires>
  </template>
  <initializer>detail::detect_numeric_field&lt;T&gt;()</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>one</name>
  <anchor>one-07</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_definitions.h</sourcePath>
      <lineNumber>796</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2jYKCXKWTJF6UqY4Me4nvRSE8Hib</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The unique instance of the unit one.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>4VpMfLu1y4pCm1ps5iazK1GsLpf4</id>
          <identifier>one</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>parts_per_million</name>
  <anchor>parts_per_million-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>48</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3HkZ5qC9Z5hHLKLpD2KVFaHkzbdA</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The unique instance of the parts-per-million unit.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>4U9y2c4wP15dfgqAjSKnFT4PTru6</id>
          <identifier>parts_per_million</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>per_mille</name>
  <anchor>per_mille-08</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>46</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2p3zALSeM84FUD23WkPaRCWj7nxJ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The unique instance of the per mille unit.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>KZUH8bTAWtoaX1qhNL2CWybfDLA</id>
          <identifier>per_mille</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>percent</name>
  <anchor>percent-0a</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>44</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3PCrsoAC11bzxLtDMKAowQekMdxy</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The unique instance of the percent unit.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>UTVZ53kg1TiKjeXG4a7T78rgCdF</id>
          <identifier>percent</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>pi</name>
  <anchor>pi-0f</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>53</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4T54WzyBYogz9mcgy6LeYYCQi8SJ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The unique instance of the π constant.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>3kyvLAhMrQDeszVe2Z5nAL4Bkup8</id>
          <identifier>pi</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>pi_c</name>
  <anchor>pi_c-0e</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_magnitude.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_magnitude.h</sourcePath>
      <lineNumber>127</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4DMLK4v8r7M88e43jR2ZqwkmQCob</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The unique instance of the pi magnitude constant.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>3XviX2iX7feybFxq4TBPUBqi9P4Y</id>
          <identifier>pi_c</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>possibly_negative</name>
  <anchor>possibly_negative-01</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_spec_definitions.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_spec_definitions.h</sourcePath>
      <lineNumber>354</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>PyQ66nSMYM9mCN8yFi2oZTTCamf</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The unique instance of the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>possibly_negative</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> tag property.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>3ALeFiFGBTQnjRanHVtUdmKCHnUG</id>
          <identifier>possibly_negative</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>ppm</name>
  <anchor>ppm</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>50</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>39nbZZqFQdS7b5CrrC4B5a5Mh7G3</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Alias for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>parts_per_million</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>parts_per_million</initializer>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>real</name>
  <anchor>real</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>244</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>42zhpKCyadZyqrKnfPxgvyvECoTQ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Customization point object returning the real part of a complex-like value.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>3G4ccYrTBB857Ah7vH2g8zqCDTn3</id>
          <identifier>real_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>WHn6bm5VTgAbNfdBCZ2666jP2hz</id>
              <identifier>real_impl</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2iqJ4TKZEJSLEpPaokwu56qTtgmk</id>
                  <identifier>detail</identifier>
                  <prefix>
                    <identifier>
                      <kind>identifier</kind>
                      <id>2qo2BEJhYin8Wk3HYFXENwuXWSUe</id>
                      <identifier>mp_units</identifier>
                    </identifier>
                  </prefix>
                </identifier>
              </prefix>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>reference_for</name>
  <anchor>reference_for</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_traits.h</sourcePath>
      <lineNumber>128</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>SVSYVmp8iyCjFLxJKgMNt1xL4QK</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Derived from the type&apos;s own </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>::reference</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> member (for </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> / </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>) or from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_like_traits&lt;T&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> / </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point_like_traits&lt;T&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> for external types.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>This is </literal>
          </text>
          <strong>
            <kind>strong</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>not</literal>
              </text>
            </children>
          </strong>
          <text>
            <kind>text</kind>
            <literal> a customization point. Users teach the library about external types by specializing </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_like_traits</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> / </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point_like_traits</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, not this helper.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Public helper that yields the reference (unit + quantity spec) associated with a quantity-like type.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a quantity-like or quantity-point-like type</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <initializer>detail::reference_for_impl&lt;T&gt;::value</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>rounded</name>
  <anchor>rounded</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/rounding.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/rounding.h</sourcePath>
      <lineNumber>105</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2DzXqGPeJwdnb5nwQ5bmKgZrxykG</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Rounding policy that rounds to the nearest representable value, to even in halfway cases</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2k742HvoWT3GgZMYfwCeYJfUD2VQ</id>
          <identifier>rounded_t</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>rounded{}</initializer>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>rounded_down</name>
  <anchor>rounded_down</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/rounding.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/rounding.h</sourcePath>
      <lineNumber>107</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>NcWJYTpzaggDQdxaS2ijVetGVfP</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Rounding policy that rounds towards negative infinity</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>3tW6B9CGr5gBq89ReHKFC4t3T82j</id>
          <identifier>rounded_down_t</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>rounded_down{}</initializer>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>rounded_up</name>
  <anchor>rounded_up</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/rounding.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/rounding.h</sourcePath>
      <lineNumber>109</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3KSdXbzsWGnnxzseWgQv73Ku7LGz</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Rounding policy that rounds towards positive infinity</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2hEGsYDLNBjUg6rzP46htufm2v3p</id>
          <identifier>rounded_up_t</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>rounded_up{}</initializer>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>space_before_unit_symbol</name>
  <anchor>space_before_unit_symbol</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_text.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_text.h</sourcePath>
      <lineNumber>70</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>49YqfrB7DrRRUpdNbedrqeMzv7Ks</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Quantities of some units (e.g. degree, arcminute, arcsecond) should not be printed with the space between a number and a unit. For those a partial specialization with the value </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>false</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> should be provided.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Puts a space &apos; &apos; sign before a unit symbol</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>U</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
                <identifier>Unit</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <initializer>true</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>tensor_order</name>
  <anchor>tensor_order-04</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>340</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>v9T2niLYsB1DPE8tZ1uXFHirDiU</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>The intrinsic tensor order of a representation type: 0 for scalar, 1 for vector, 2 for tensor.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the representation type</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>ktnRPuWZy1tNGnc2XX5w6ozA1h3</id>
          <identifier>unspecified_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2HniVS23jfsJhnimKmHvULUT12dS</id>
              <identifier>utility</identifier>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <isConstexpr/>
</variable>
<variable>
  <name>tensor_order</name>
  <anchor>tensor_order-0b</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>348</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>3XnwHNgB3eWws3proz1EdDpE8HyQ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Structural detection of </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>tensor_order</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> for a type exposing exactly one indexing shape.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the representation type</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
          <identifier>size_t</identifier>
          <prefix>
            <identifier>
              <kind>identifier</kind>
              <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
              <identifier>std</identifier>
            </identifier>
          </prefix>
        </identifier>
      </name>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <args>
      <type>
        <kind>type</kind>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <identifier>T</identifier>
              </identifier>
            </name>
          </named>
        </type>
      </type>
    </args>
    <requires>(!detail::has_ambiguous_order&lt;T&gt;)</requires>
  </template>
  <initializer>detail::has_matrix_indexing&lt;T&gt;   ? std::size_t{2}
                                        : detail::has_vector_indexing&lt;T&gt; ? std::size_t{1}
                                                                         : std::size_t{0}</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>treat_as_floating_point</name>
  <anchor>treat_as_floating_point</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/customization_points.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/customization_points.h</sourcePath>
      <lineNumber>524</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2CdRRBQBVb9qLSXUCgoX2NV7rvxJ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>This type trait should be specialized for a custom representation type to specify that values of this type should be treated by the library as a floating-point ones which will enable implicit conversions between quantities.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Specifies if a value of a type should be treated as a floating-point value</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a representation type for which a type trait is defined</literal>
          </text>
        </children>
        <name>Rep</name>
      </tParam>
    </tparams>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <identifier>bool</identifier>
        </identifier>
      </name>
      <fundamentalType>bool</fundamentalType>
    </named>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Rep</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <initializer>std::chrono::treat_as_floating_point_v&lt;detail::value_type_t&lt;Rep&gt;&gt;</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>truncated</name>
  <anchor>truncated</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/rounding.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/rounding.h</sourcePath>
      <lineNumber>103</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2yq5LFqXNDEeJGxyeKpr3fbF3VNw</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Rounding policy that rounds towards zero for an integral destination</literal>
        </text>
      </children>
    </brief>
  </doc>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <identifier>
          <kind>identifier</kind>
          <id>2VSEeX5pPfQQcYBtyEpWPPwzChuv</id>
          <identifier>truncated_t</identifier>
        </identifier>
      </name>
    </named>
  </type>
  <initializer>truncated{}</initializer>
  <isInline/>
  <isConstexpr/>
</variable>
<variable>
  <name>unit_for</name>
  <anchor>unit_for</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_traits.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_traits.h</sourcePath>
      <lineNumber>113</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>2nF1QaEUfUxNrtXVwc8uGZxhwZrP</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Derived from the type&apos;s own </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>::unit</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> member (for </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> / </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>) or from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_like_traits&lt;T&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> / </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point_like_traits&lt;T&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> for external types.</literal>
          </text>
        </children>
      </paragraph>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>This is </literal>
          </text>
          <strong>
            <kind>strong</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>not</literal>
              </text>
            </children>
          </strong>
          <text>
            <kind>text</kind>
            <literal> a customization point. Users teach the library about external types by specializing </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_like_traits</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> / </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point_like_traits</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, not this helper.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Public helper that yields the unit associated with a quantity-like type.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>a quantity-like or quantity-point-like type</literal>
          </text>
        </children>
        <name>T</name>
      </tParam>
    </tparams>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <initializer>detail::unit_for_impl&lt;T&gt;::value</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>zeroth_point_origin</name>
  <anchor>zeroth_point_origin</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/quantity_point.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
      <lineNumber>277</lineNumber>
      <columnNumber>17</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>4URRZBjyq49mE8hfqX92fdvENP2J</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deprecated alias for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>natural_point_origin</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <attributes>
    <deprecated>
      <kind>deprecated</kind>
      <name>deprecated</name>
      <balancedTokens>
        <string>&quot;2.6.0: Use `natural_point_origin` instead&quot;</string>
      </balancedTokens>
      <message>2.6.0: Use `natural_point_origin` instead</message>
    </deprecated>
  </attributes>
  <type>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>3r2vXYd3SPieRgasCwgJtKMR29CX</id>
          <identifier>natural_point_origin_</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>QS</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </type>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
                <identifier>QuantitySpec</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <initializer>natural_point_origin&lt;QS&gt;</initializer>
  <isConstexpr/>
</variable>
<variable>
  <name>π</name>
  <anchor>π</anchor>
  <loc>
    <defLoc>
      <shortPath>mp-units/framework/unit_conversion.h</shortPath>
      <sourcePath>src/core/include/mp-units/framework/unit_conversion.h</sourcePath>
      <lineNumber>55</lineNumber>
      <columnNumber>1</columnNumber>
      <documented/>
    </defLoc>
  </loc>
  <kind>variable</kind>
  <id>F74Tj1CvuVVXt7cow1oVtz82kca</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Alias for </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>pi</literal>
            </text>
          </children>
        </code>
      </children>
    </brief>
  </doc>
  <type>
    <auto>
      <kind>auto</kind>
      <keyword>auto</keyword>
    </auto>
  </type>
  <initializer>pi</initializer>
  <isInline/>
  <isConstexpr/>
</variable>
<concept>
  <name>Dimension</name>
  <anchor>Dimension</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/dimension_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/dimension_concepts.h</sourcePath>
        <lineNumber>47</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>45RhVybzfdGrtM3QeHkKgHVjgXwC</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all dimension types in the library.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all dimensions in the library.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>std::derived_from&lt;T, detail::dimension_interface&gt; &amp;&amp; detail::SymbolicConstant&lt;T&gt; &amp;&amp;
                    !is_specialization_of_v&lt;T, base_dimension&gt;</constraint>
</concept>
<concept>
  <name>DimensionOf</name>
  <anchor>DimensionOf</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/dimension_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/dimension_concepts.h</sourcePath>
        <lineNumber>68</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>3yTDqTjKCBokFjbu7VA9E2GDxWhv</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied when both argument satisfy a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>Dimension</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> concept and when they compare equal.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept checking if the argument is of the same dimension.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>D</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <constraint>Dimension&lt;T&gt; &amp;&amp; Dimension&lt;MP_UNITS_REMOVE_CONST(decltype(D))&gt; &amp;&amp; (T{} == D)</constraint>
</concept>
<concept>
  <name>MeasuredConstant</name>
  <anchor>MeasuredConstant</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_concepts.h</sourcePath>
        <lineNumber>122</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>2UFYWEcA38viiGwDvtBX5fW98cyP</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all constants defined with a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>relative_standard_uncertainty</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> or a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>standard_uncertainty</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> argument. Exact constants do not have such an argument, so the distinction is visible to the type system.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching constants that are measured rather than exact by definition</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>Unit&lt;T&gt; &amp;&amp; (requires { requires UnitMagnitude&lt;MP_UNITS_NONCONST_TYPE(T::_relative_standard_uncertainty_)&gt;; } ||
              requires { requires Unit&lt;MP_UNITS_NONCONST_TYPE(T::_standard_uncertainty_)&gt;; })</constraint>
</concept>
<concept>
  <name>PointOrigin</name>
  <anchor>PointOrigin</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/point_origin_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/point_origin_concepts.h</sourcePath>
        <lineNumber>48</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>4NoR1GhJWMy7ThNgF4n9Se5DCrUJ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by either quantity points or by all types derived from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>absolute_point_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> class template.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all quantity point origins in the library</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>std::derived_from&lt;T, detail::point_origin_interface&gt; &amp;&amp; detail::SymbolicConstant&lt;T&gt; &amp;&amp;
  !detail::is_specialization_of_absolute_point_origin&lt;T&gt; &amp;&amp; !detail::is_specialization_of_relative_point_origin&lt;T&gt;</constraint>
</concept>
<concept>
  <name>PointOriginFor</name>
  <anchor>PointOriginFor</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point_concepts.h</sourcePath>
        <lineNumber>104</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>2aXKW9wnyinkHgp4PdNJx1dVcXRf</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all quantity point origins that are defined using a provided quantity specification.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all quantity point origins for a specified quantity type in the library</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <constraint>PointOrigin&lt;T&gt; &amp;&amp; QuantitySpecOf&lt;MP_UNITS_REMOVE_CONST(decltype(QS)), T::_quantity_spec_&gt;</constraint>
</concept>
<concept>
  <name>PrefixableUnit</name>
  <anchor>PrefixableUnit</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_concepts.h</sourcePath>
        <lineNumber>59</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>3WiMu133XMz2yEYikidcGfhQdKEy</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept to be used to define prefixes for a unit</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>Unit&lt;T&gt; &amp;&amp; is_derived_from_specialization_of_v&lt;T, named_unit&gt;</constraint>
</concept>
<concept>
  <name>Quantity</name>
  <anchor>Quantity-0c</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_concepts.h</sourcePath>
        <lineNumber>53</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all types being a either specialization or derived from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity</literal>
              </text>
            </children>
          </code>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all quantities in the library</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>detail::is_derived_from_specialization_of_quantity&lt;T&gt;</constraint>
</concept>
<concept>
  <name>QuantityLike</name>
  <anchor>QuantityLike</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_concepts.h</sourcePath>
        <lineNumber>85</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>411DKZ7RnmHriQwPqnSswA5Vw2iM</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all external types (not-defined in mp-units) that via a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_like_traits</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> provide all quantity-specific information.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all external quantities like types</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>!Quantity&lt;T&gt; &amp;&amp; detail::QuantityLikeImpl&lt;T, quantity_like_traits&gt; &amp;&amp; requires {
  typename quantity&lt;quantity_like_traits&lt;T&gt;::reference, typename quantity_like_traits&lt;T&gt;::rep&gt;;
}</constraint>
</concept>
<concept>
  <name>QuantityOf</name>
  <anchor>QuantityOf</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_concepts.h</sourcePath>
        <lineNumber>75</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>4MKqffEFb9yHWE6YsBxBniqNGjrr</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all quantities with the reference satisfying </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>ReferenceOf&lt;QS&gt;.</literal>
              </text>
            </children>
          </code>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all quantities of the provided quantity spec</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <constraint>Quantity&lt;Q&gt; &amp;&amp; QuantitySpec&lt;MP_UNITS_REMOVE_CONST(decltype(QS))&gt; &amp;&amp;
                     ReferenceOf&lt;MP_UNITS_NONCONST_TYPE(Q::reference), QS&gt;</constraint>
</concept>
<concept>
  <name>QuantityPoint</name>
  <anchor>QuantityPoint</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point_concepts.h</sourcePath>
        <lineNumber>83</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>2Gw7wZ29Ayr1dU8wmCEwz3TuwQfz</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all types being either a specialization or derived from </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point</literal>
              </text>
            </children>
          </code>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all quantity points in the library</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>detail::is_quantity_point&lt;T&gt;</constraint>
</concept>
<concept>
  <name>QuantityPointLike</name>
  <anchor>QuantityPointLike</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point_concepts.h</sourcePath>
        <lineNumber>166</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>4VxaiASJtxfgvJLJcnqCwWWudqRp</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all external types (not-defined in mp-units) that via a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_point_like_traits</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> provide all quantity_point-specific information.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all external quantity point like types</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>!QuantityPoint&lt;T&gt; &amp;&amp; detail::QuantityLikeImpl&lt;T, quantity_point_like_traits&gt; &amp;&amp; requires {
  typename quantity_point&lt;quantity_point_like_traits&lt;T&gt;::reference, quantity_point_like_traits&lt;T&gt;::point_origin,
                          typename quantity_point_like_traits&lt;T&gt;::rep&gt;;
}</constraint>
</concept>
<concept>
  <name>QuantityPointOf</name>
  <anchor>QuantityPointOf</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point_concepts.h</sourcePath>
        <lineNumber>155</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>kwCmGN48aj7Jp3frkXvo9RGdBkc</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all quantity points with a quantity_spec being the instantiation derived from the provided quantity_spec type, or quantity points having the origin with the same </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>absolute_point_origin</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all quantity points of the provided property</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>V</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <constraint>QuantityPoint&lt;QP&gt; &amp;&amp; (ReferenceOf&lt;MP_UNITS_NONCONST_TYPE(QP::reference), V&gt; ||
                        detail::SameAbsolutePointOriginAs&lt;MP_UNITS_NONCONST_TYPE(QP::absolute_point_origin), V&gt;)</constraint>
</concept>
<concept>
  <name>QuantitySpec</name>
  <anchor>QuantitySpec</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_concepts.h</sourcePath>
        <lineNumber>74</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>VJSR9r38GF59WETTrMJBs2PpmHb</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by strong types derived from a </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_spec</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> specialization, excluding </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>quantity_spec</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> specializations themselves.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all quantity specifications in the library</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>std::derived_from&lt;T, detail::quantity_spec_interface_base&gt; &amp;&amp; detail::SymbolicConstant&lt;T&gt; &amp;&amp;
                       !detail::is_specialization_of_quantity_spec&lt;T&gt;</constraint>
</concept>
<concept>
  <name>QuantitySpecOf</name>
  <anchor>QuantitySpecOf</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_spec_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_spec_concepts.h</sourcePath>
        <lineNumber>125</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>42jHwWWeWPWiTpYJ4Db5oSgbhYb7</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all quantity specifications that are implicitly convertible to the provided </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>QS</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> value.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all quantity specifications of a provided quantity spec value</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <constraint>QuantitySpec&lt;T&gt; &amp;&amp; QuantitySpec&lt;MP_UNITS_REMOVE_CONST(decltype(QS))&gt; &amp;&amp; (mp_units::implicitly_convertible(T{}, QS))</constraint>
</concept>
<concept>
  <name>Reference</name>
  <anchor>Reference-0ba</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/reference_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/reference_concepts.h</sourcePath>
        <lineNumber>43</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all specializations of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>reference.</literal>
              </text>
            </children>
          </code>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all references in the library.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>Unit&lt;T&gt; || is_specialization_of&lt;T, reference&gt;</constraint>
</concept>
<concept>
  <name>ReferenceOf</name>
  <anchor>ReferenceOf</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/reference_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/reference_concepts.h</sourcePath>
        <lineNumber>51</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>3Ub6ZdGyQn9xo7UbcSDY6L76yn98</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all references for which </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>QuantitySpecOf&lt;QS&gt;</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> is true.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all references of the provided quantity spec</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <constraint>Reference&lt;T&gt; &amp;&amp; QuantitySpecOf&lt;decltype(get_quantity_spec(T{})), QS&gt;</constraint>
</concept>
<concept>
  <name>RepresentationOf</name>
  <anchor>RepresentationOf</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/representation_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/representation_concepts.h</sourcePath>
        <lineNumber>416</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>tiiH6MTehoBtfv5fCu7BxYQfaeF</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Concept matching a representation type suitable for a quantity specification or character</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>V</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <constraint>(QuantitySpec&lt;MP_UNITS_REMOVE_CONST(decltype(V))&gt; &amp;&amp;
   ((detail::QuantityKindSpec&lt;MP_UNITS_REMOVE_CONST(decltype(V))&gt; &amp;&amp; detail::SomeRepresentation&lt;T&gt;) ||
    (detail::RepresentationOfOrder&lt;T, detail::order_of(get_character(V))&gt; &amp;&amp;
     detail::RepresentationOfField&lt;T, detail::field_of(get_character(V))&gt;))) ||
  detail::RepresentationOfCharacter&lt;T, V&gt;</constraint>
</concept>
<concept>
  <name>RoundingPolicy</name>
  <anchor>RoundingPolicy</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/rounding.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/rounding.h</sourcePath>
        <lineNumber>116</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>YVX6cpM1CYsWUJnza1LHnhh9V9h</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied only by the types of </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>truncated</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rounded</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rounded_down</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>, and </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>rounded_up</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal>.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all rounding policies</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>contains&lt;T, truncated_t, rounded_t, rounded_down_t, rounded_up_t&gt;()</constraint>
</concept>
<concept>
  <name>Unit</name>
  <anchor>Unit</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_concepts.h</sourcePath>
        <lineNumber>52</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>2hgf2h226oxP7rRL5kMzBgUFMDVu</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all unit types provided by the library.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all unit types in the library</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>std::derived_from&lt;T, detail::unit_interface&gt; &amp;&amp; detail::SymbolicConstant&lt;T&gt; &amp;&amp;
               !is_specialization_of_v&lt;T, named_unit&gt; &amp;&amp; !detail::is_specialization_of_prefixed_unit&lt;T&gt;</constraint>
</concept>
<concept>
  <name>UnitMagnitude</name>
  <anchor>UnitMagnitude</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_magnitude_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_magnitude_concepts.h</sourcePath>
        <lineNumber>68</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>xKAh8ftVFPPg9yHq2Nj39wmoCFd</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Concept to detect whether T is a valid UnitMagnitude.</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>T</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
  </template>
  <constraint>is_specialization_of_v&lt;T, detail::unit_magnitude&gt;</constraint>
</concept>
<concept>
  <name>UnitOf</name>
  <anchor>UnitOf</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/unit_concepts.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/unit_concepts.h</sourcePath>
        <lineNumber>68</lineNumber>
        <columnNumber>17</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>concept</kind>
  <id>2i4tXKX65f73dK9BG19YBaVKZ4Xk</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <document>
      <paragraph>
        <kind>paragraph</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>Satisfied by all units for which an associated quantity spec is implicitly convertible to the provided </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>QS</literal>
              </text>
            </children>
          </code>
          <text>
            <kind>text</kind>
            <literal> value.</literal>
          </text>
        </children>
      </paragraph>
    </document>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>A concept matching all units associated with the provided quantity spec</literal>
        </text>
      </children>
    </brief>
  </doc>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>U</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>QS</name>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
          </auto>
        </type>
      </constant>
    </params>
  </template>
  <constraint>Unit&lt;U&gt; &amp;&amp; QuantitySpec&lt;MP_UNITS_REMOVE_CONST(decltype(QS))&gt; &amp;&amp;
  (mp_units::implicitly_convertible(get_quantity_spec(U{}), QS) ||
   (unsatisfied&lt;&quot;Unit &apos;{}&apos; is associated with quantity of kind &apos;{}&apos; which is not convertible to the &apos;{}&apos; quantity&quot;&gt;(
     U{}, type_name(get_quantity_spec(U{})._quantity_spec_), type_name(QS))))</constraint>
</concept>
<guide>
  <name>basic_fixed_string</name>
  <anchor>basic_fixed_string-0f</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>419</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>guide</kind>
  <id>4T3hrnMess462PNxTNtMdenG9UCt</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deduces </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>basic_fixed_string</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a pack of individual characters</literal>
        </text>
      </children>
    </brief>
  </doc>
  <deduced>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
          <identifier>basic_fixed_string</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
            <constant>
              <kind>constant</kind>
              <value>1 + sizeof...(Rest)</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </deduced>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>CharT</name>
        <keyKind>typename</keyKind>
      </type>
      <type>
        <kind>type</kind>
        <name>Rest</name>
        <isParameterPack/>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>Vne1BHMmcm9Rg1T7td1j6LZ65hv</id>
            <identifier>same_as</identifier>
            <prefix>
              <identifier>
                <kind>identifier</kind>
                <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                <identifier>std</identifier>
              </identifier>
            </prefix>
            <templateArgs>
              <type>
                <kind>type</kind>
                <type>
                  <named>
                    <kind>named</kind>
                    <name>
                      <identifier>
                        <kind>identifier</kind>
                        <identifier>CharT</identifier>
                      </identifier>
                    </name>
                  </named>
                </type>
              </type>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
  </template>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>CharT</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <isPackExpansion/>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Rest</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
  </params>
</guide>
<guide>
  <name>basic_fixed_string</name>
  <anchor>basic_fixed_string-07</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>427</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>guide</kind>
  <id>2bai7FbaaMex8cf5o62LHb9J1cYf</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deduces </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>basic_fixed_string</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>std::array</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> of characters</literal>
        </text>
      </children>
    </brief>
  </doc>
  <deduced>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
          <identifier>basic_fixed_string</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
            <constant>
              <kind>constant</kind>
              <value>N</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </deduced>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>CharT</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>N</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
  </template>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <id>3f9siUw7EuxdTb8VxLveAmSuTWCZ</id>
              <identifier>from_range_t</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
            </identifier>
          </name>
        </named>
      </type>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <specialization>
              <kind>specialization</kind>
              <id>2gaoUWQMA6h1PziKLih7RLioVE3c</id>
              <identifier>array</identifier>
              <prefix>
                <identifier>
                  <kind>identifier</kind>
                  <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                  <identifier>std</identifier>
                </identifier>
              </prefix>
              <templateArgs>
                <type>
                  <kind>type</kind>
                  <type>
                    <named>
                      <kind>named</kind>
                      <name>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>CharT</identifier>
                        </identifier>
                      </name>
                    </named>
                  </type>
                </type>
                <constant>
                  <kind>constant</kind>
                  <value>N</value>
                </constant>
              </templateArgs>
            </specialization>
          </name>
        </named>
      </type>
    </param>
  </params>
</guide>
<guide>
  <name>basic_fixed_string</name>
  <anchor>basic_fixed_string-0d</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/ext/fixed_string.h</shortPath>
        <sourcePath>src/core/include/mp-units/ext/fixed_string.h</sourcePath>
        <lineNumber>423</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>guide</kind>
  <id>3zeqQ7151vvHP4xWNTKmNFB2SHhW</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deduces </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>basic_fixed_string</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a null-terminated character array literal</literal>
        </text>
      </children>
    </brief>
  </doc>
  <deduced>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2vobs4J4rwmVnn95EApdmvEbr3sT</id>
          <identifier>basic_fixed_string</identifier>
          <templateArgs>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
            <constant>
              <kind>constant</kind>
              <value>N - 1</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </deduced>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>CharT</name>
        <keyKind>typename</keyKind>
      </type>
      <constant>
        <kind>constant</kind>
        <name>N</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
  </template>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <array>
              <kind>array</kind>
              <elementType>
                <named>
                  <kind>named</kind>
                  <isConst/>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>CharT</identifier>
                    </identifier>
                  </name>
                </named>
              </elementType>
              <bounds>
                <written>N</written>
              </bounds>
            </array>
          </pointeeType>
        </lValueReference>
      </type>
      <name>str</name>
    </param>
  </params>
</guide>
<guide>
  <name>quantity</name>
  <anchor>quantity-03</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
        <lineNumber>1288</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>guide</kind>
  <id>hFqLBYYZxzN2aLa5ULgKpaSTEco</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deduces a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a numerical value alone, using the </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>one</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> reference by default.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference to use, defaulting to </literal>
          </text>
          <code>
            <kind>code</kind>
            <children>
              <text>
                <kind>text</kind>
                <literal>one</literal>
              </text>
            </children>
          </code>
        </children>
        <name>R</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the numerical value type</literal>
          </text>
        </children>
        <name>Value</name>
      </tParam>
    </tparams>
  </doc>
  <deduced>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>R</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>KB5qmriszBYfdwuVVgPjvA4ukKZ</id>
                      <identifier>representation_canonical_type_t</identifier>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>Value</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </deduced>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>R</name>
        <default>
          <constant>
            <kind>constant</kind>
            <value>one</value>
          </constant>
        </default>
        <type>
          <auto>
            <kind>auto</kind>
            <keyword>auto</keyword>
            <constraint>
              <identifier>
                <kind>identifier</kind>
                <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
                <identifier>Reference</identifier>
              </identifier>
            </constraint>
          </auto>
        </type>
      </constant>
      <type>
        <kind>type</kind>
        <name>Value</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>RepresentationOf&lt;representation_canonical_type_t&lt;Value&gt;, get_quantity_spec(R)&gt;</requires>
  </template>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Value</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
  </params>
</guide>
<guide>
  <name>quantity</name>
  <anchor>quantity-057</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
        <lineNumber>1278</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>guide</kind>
  <id>2DxaWqY82yHLfWGJ1qLedk5Cjef4</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deduces a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a numerical value and an explicit reference.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the reference type</literal>
          </text>
        </children>
        <name>R</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the numerical value type</literal>
          </text>
        </children>
        <name>Value</name>
      </tParam>
    </tparams>
  </doc>
  <deduced>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>R{}</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <specialization>
                      <kind>specialization</kind>
                      <id>KB5qmriszBYfdwuVVgPjvA4ukKZ</id>
                      <identifier>representation_canonical_type_t</identifier>
                      <templateArgs>
                        <type>
                          <kind>type</kind>
                          <type>
                            <named>
                              <kind>named</kind>
                              <name>
                                <identifier>
                                  <kind>identifier</kind>
                                  <identifier>Value</identifier>
                                </identifier>
                              </name>
                            </named>
                          </type>
                        </type>
                      </templateArgs>
                    </specialization>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </deduced>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>R</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3bcNyEwthidxWzg8BreCXz7RN5wq</id>
            <identifier>Reference</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>Value</name>
        <keyKind>typename</keyKind>
      </type>
    </params>
    <requires>RepresentationOf&lt;representation_canonical_type_t&lt;Value&gt;, get_quantity_spec(R{})&gt;</requires>
  </template>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Value</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>v</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>R</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
  </params>
</guide>
<guide>
  <name>quantity</name>
  <anchor>quantity-051</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity.h</sourcePath>
        <lineNumber>1297</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>guide</kind>
  <id>291jRSrkdwmLhmqwNXiPCHwShFpi</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deduces a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from an external quantity-like type via </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_like_traits</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the external quantity-like type</literal>
          </text>
        </children>
        <name>Q</name>
      </tParam>
    </tparams>
  </doc>
  <deduced>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>LEdUDoZpqttStUmCqXAEr1XZtHB</id>
          <identifier>quantity</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_like_traits&lt;Q&gt;::reference</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>rep</identifier>
                      <prefix>
                        <specialization>
                          <kind>specialization</kind>
                          <id>vwZNR3M7EB8zgNmAuTuHFG26rMF</id>
                          <identifier>quantity_like_traits</identifier>
                          <templateArgs>
                            <type>
                              <kind>type</kind>
                              <type>
                                <named>
                                  <kind>named</kind>
                                  <name>
                                    <identifier>
                                      <kind>identifier</kind>
                                      <identifier>Q</identifier>
                                    </identifier>
                                  </name>
                                </named>
                              </type>
                            </type>
                          </templateArgs>
                        </specialization>
                      </prefix>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </deduced>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>411DKZ7RnmHriQwPqnSswA5Vw2iM</id>
            <identifier>QuantityLike</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Q</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
  </params>
</guide>
<guide>
  <name>quantity_point</name>
  <anchor>quantity_point-0c5</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
        <lineNumber>1268</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>guide</kind>
  <id>3kuPnrykinfBiDJeN55VK4dfnKZy</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deduces a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_point</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a quantity and an explicit point origin.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity type</literal>
          </text>
        </children>
        <name>Q</name>
      </tParam>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the point origin type</literal>
          </text>
        </children>
        <name>PO</name>
      </tParam>
    </tparams>
  </doc>
  <deduced>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
          <identifier>quantity_point</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>Q::reference</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>PO{}</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>rep</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Q</identifier>
                        </identifier>
                      </prefix>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </deduced>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
      <type>
        <kind>type</kind>
        <name>PO</name>
        <keyKind>class</keyKind>
        <constraint>
          <specialization>
            <kind>specialization</kind>
            <id>2aXKW9wnyinkHgp4PdNJx1dVcXRf</id>
            <identifier>PointOriginFor</identifier>
            <templateArgs>
              <constant>
                <kind>constant</kind>
                <value>Q::quantity_spec</value>
              </constant>
            </templateArgs>
          </specialization>
        </constraint>
      </type>
    </params>
  </template>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Q</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>q</name>
    </param>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>PO</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
  </params>
</guide>
<guide>
  <name>quantity_point</name>
  <anchor>quantity_point-04</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
        <lineNumber>1259</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>guide</kind>
  <id>zTEG4PozDqx8ZVD19iNxC4haTL7</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deduces a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_point</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from a quantity alone, using the default point origin for its reference.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity type</literal>
          </text>
        </children>
        <name>Q</name>
      </tParam>
    </tparams>
  </doc>
  <deduced>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
          <identifier>quantity_point</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>Q::reference</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>default_point_origin(Q::reference)</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>rep</identifier>
                      <prefix>
                        <identifier>
                          <kind>identifier</kind>
                          <identifier>Q</identifier>
                        </identifier>
                      </prefix>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </deduced>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>Q</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>3qAeDKNiywNEzCu5QCmwmnFtW2mR</id>
            <identifier>Quantity</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>Q</identifier>
            </identifier>
          </name>
        </named>
      </type>
      <name>q</name>
    </param>
  </params>
</guide>
<guide>
  <name>quantity_point</name>
  <anchor>quantity_point-0cb</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/quantity_point.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/quantity_point.h</sourcePath>
        <lineNumber>1276</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>guide</kind>
  <id>3qCjp4xLtb2hieJDq6ziwfzDEgRv</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deduces a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_point</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> from an external quantity-point-like type via </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>quantity_point_like_traits</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal>.</literal>
        </text>
      </children>
    </brief>
    <tparams>
      <tParam>
        <kind>t-param</kind>
        <children>
          <text>
            <kind>text</kind>
            <literal>the quantity-point-like type</literal>
          </text>
        </children>
        <name>QP</name>
      </tParam>
    </tparams>
  </doc>
  <deduced>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>2yjx1vnc5z9QvHyxt3APwaSpNiv8</id>
          <identifier>quantity_point</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>quantity_point_like_traits&lt;QP&gt;::reference</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>quantity_point_like_traits&lt;QP&gt;::point_origin</value>
            </constant>
            <type>
              <kind>type</kind>
              <type>
                <named>
                  <kind>named</kind>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>rep</identifier>
                      <prefix>
                        <specialization>
                          <kind>specialization</kind>
                          <id>3tAPX4gKmpLdoKTPusVMGYWHiEK4</id>
                          <identifier>quantity_point_like_traits</identifier>
                          <templateArgs>
                            <type>
                              <kind>type</kind>
                              <type>
                                <named>
                                  <kind>named</kind>
                                  <name>
                                    <identifier>
                                      <kind>identifier</kind>
                                      <identifier>QP</identifier>
                                    </identifier>
                                  </name>
                                </named>
                              </type>
                            </type>
                          </templateArgs>
                        </specialization>
                      </prefix>
                    </identifier>
                  </name>
                </named>
              </type>
            </type>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </deduced>
  <template>
    <params>
      <type>
        <kind>type</kind>
        <name>QP</name>
        <keyKind>class</keyKind>
        <constraint>
          <identifier>
            <kind>identifier</kind>
            <id>4VxaiASJtxfgvJLJcnqCwWWudqRp</id>
            <identifier>QuantityPointLike</identifier>
          </identifier>
        </constraint>
      </type>
    </params>
  </template>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>QP</identifier>
            </identifier>
          </name>
        </named>
      </type>
    </param>
  </params>
</guide>
<guide>
  <name>symbol_text</name>
  <anchor>symbol_text-06</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>287</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>guide</kind>
  <id>2MEHhoNaYdMRKXD1J9RbZdtP4pvZ</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deduction guide for a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>symbol_text</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> constructed from a single character</literal>
        </text>
      </children>
    </brief>
  </doc>
  <deduced>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
          <identifier>symbol_text</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>1</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>1</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </deduced>
  <params>
    <param>
      <type>
        <named>
          <kind>named</kind>
          <name>
            <identifier>
              <kind>identifier</kind>
              <identifier>char</identifier>
            </identifier>
          </name>
          <fundamentalType>char</fundamentalType>
        </named>
      </type>
    </param>
  </params>
</guide>
<guide>
  <name>symbol_text</name>
  <anchor>symbol_text-0f</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>302</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>guide</kind>
  <id>4VCoXHrj66kKijUz6uM4ybGgAsA8</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deduction guide for a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>symbol_text</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> constructed from separate UTF-8 and portable fixed strings</literal>
        </text>
      </children>
    </brief>
  </doc>
  <deduced>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
          <identifier>symbol_text</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>N</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>M</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </deduced>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>N</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>M</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
  </template>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>EUR8d61S1WxEe8azn8ugmzAGxca</id>
                  <identifier>fixed_u8string</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>4FJnHCB9VAAzQgxJdRPNFtwnAPAb</id>
                  <identifier>fixed_string</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>M</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
    </param>
  </params>
</guide>
<guide>
  <name>symbol_text</name>
  <anchor>symbol_text-07</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>294</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>guide</kind>
  <id>2gW28gGggKebfbujvx7Mj88R7Ubk</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deduction guide for a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>symbol_text</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> constructed from a fixed string</literal>
        </text>
      </children>
    </brief>
  </doc>
  <deduced>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
          <identifier>symbol_text</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>N</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>N</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </deduced>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>N</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
  </template>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <named>
              <kind>named</kind>
              <isConst/>
              <name>
                <specialization>
                  <kind>specialization</kind>
                  <id>4FJnHCB9VAAzQgxJdRPNFtwnAPAb</id>
                  <identifier>fixed_string</identifier>
                  <templateArgs>
                    <constant>
                      <kind>constant</kind>
                      <value>N</value>
                    </constant>
                  </templateArgs>
                </specialization>
              </name>
            </named>
          </pointeeType>
        </lValueReference>
      </type>
    </param>
  </params>
</guide>
<guide>
  <name>symbol_text</name>
  <anchor>symbol_text-01</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>298</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>guide</kind>
  <id>SjCEsW8nojeUm5mQv3fP75Q6XPF</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deduction guide for a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>symbol_text</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> constructed from separate UTF-8 and portable string literals</literal>
        </text>
      </children>
    </brief>
  </doc>
  <deduced>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
          <identifier>symbol_text</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>N - 1</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>M - 1</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </deduced>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>N</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
      <constant>
        <kind>constant</kind>
        <name>M</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
  </template>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <array>
              <kind>array</kind>
              <elementType>
                <named>
                  <kind>named</kind>
                  <isConst/>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>char8_t</identifier>
                    </identifier>
                  </name>
                  <fundamentalType>char8_t</fundamentalType>
                </named>
              </elementType>
              <bounds>
                <written>N</written>
              </bounds>
            </array>
          </pointeeType>
        </lValueReference>
      </type>
    </param>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <array>
              <kind>array</kind>
              <elementType>
                <named>
                  <kind>named</kind>
                  <isConst/>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>char</identifier>
                    </identifier>
                  </name>
                  <fundamentalType>char</fundamentalType>
                </named>
              </elementType>
              <bounds>
                <written>M</written>
              </bounds>
            </array>
          </pointeeType>
        </lValueReference>
      </type>
    </param>
  </params>
</guide>
<guide>
  <name>symbol_text</name>
  <anchor>symbol_text-03f</anchor>
  <loc>
    <loc>
      <location>
        <shortPath>mp-units/framework/symbol_text.h</shortPath>
        <sourcePath>src/core/include/mp-units/framework/symbol_text.h</sourcePath>
        <lineNumber>290</lineNumber>
        <columnNumber>1</columnNumber>
        <documented/>
      </location>
    </loc>
  </loc>
  <kind>guide</kind>
  <id>tS4CSHbMB9XzKkJGe4kb3KZje7a</id>
  <extraction>regular</extraction>
  <parent>2qo2BEJhYin8Wk3HYFXENwuXWSUe</parent>
  <doc>
    <brief>
      <kind>brief</kind>
      <children>
        <text>
          <kind>text</kind>
          <literal>Deduction guide for a </literal>
        </text>
        <code>
          <kind>code</kind>
          <children>
            <text>
              <kind>text</kind>
              <literal>symbol_text</literal>
            </text>
          </children>
        </code>
        <text>
          <kind>text</kind>
          <literal> constructed from a narrow string literal</literal>
        </text>
      </children>
    </brief>
  </doc>
  <deduced>
    <named>
      <kind>named</kind>
      <name>
        <specialization>
          <kind>specialization</kind>
          <id>i4mN4SDVW1sC1TDABKsaGtziHbz</id>
          <identifier>symbol_text</identifier>
          <templateArgs>
            <constant>
              <kind>constant</kind>
              <value>N - 1</value>
            </constant>
            <constant>
              <kind>constant</kind>
              <value>N - 1</value>
            </constant>
          </templateArgs>
        </specialization>
      </name>
    </named>
  </deduced>
  <template>
    <params>
      <constant>
        <kind>constant</kind>
        <name>N</name>
        <type>
          <named>
            <kind>named</kind>
            <name>
              <identifier>
                <kind>identifier</kind>
                <id>zA9RqMgBvBSA4UNfdU9ni3RAWBy</id>
                <identifier>size_t</identifier>
                <prefix>
                  <identifier>
                    <kind>identifier</kind>
                    <id>2gQYpYhLmwB2jja6qUZm6ZYuK3Xy</id>
                    <identifier>std</identifier>
                  </identifier>
                </prefix>
              </identifier>
            </name>
          </named>
        </type>
      </constant>
    </params>
  </template>
  <params>
    <param>
      <type>
        <lValueReference>
          <kind>lvalue-reference</kind>
          <pointeeType>
            <array>
              <kind>array</kind>
              <elementType>
                <named>
                  <kind>named</kind>
                  <isConst/>
                  <name>
                    <identifier>
                      <kind>identifier</kind>
                      <identifier>char</identifier>
                    </identifier>
                  </name>
                  <fundamentalType>char</fundamentalType>
                </named>
              </elementType>
              <bounds>
                <written>N</written>
              </bounds>
            </array>
          </pointeeType>
        </lValueReference>
      </type>
    </param>
  </params>
</guide>
</mrdocs>
