=====
Usage
=====

`os-traits` is primarily composed of a set of constants that may be referenced
by simply importing the ``os_traits`` module and referencing one of the
module's traits constants::

    $ python3
    Python 3.6.8 (default, Oct  7 2019, 12:59:55)
    [GCC 8.3.0] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import os_traits as ot
    >>> print(ot.HW_CPU_X86_SSE42)
    HW_CPU_X86_SSE42

You can get a list of the ``os_traits`` symbols by simply doing a
``dir(os_traits)``.

Want to see the trait strings for a subset of traits? There's a method for that
too::

    >>> import pprint
    >>> pprint.pprint(ot.get_traits(prefix='HW_CPU_X86_'))
    ['HW_CPU_X86_FMA3',
    'HW_CPU_X86_AVX',
    'HW_CPU_X86_MMX',
    'HW_CPU_X86_MPX',
    'HW_CPU_X86_CLMUL',
    'HW_CPU_X86_AVX512VL',
    'HW_CPU_X86_AVX512CD',
    'HW_CPU_X86_BMI',
    'HW_CPU_X86_AVX512DQ',
    'HW_CPU_X86_SSE3',
    'HW_CPU_X86_ABM',
    'HW_CPU_X86_SSE4A',
    'HW_CPU_X86_AESNI',
    'HW_CPU_X86_F16C',
    'HW_CPU_X86_VMX',
    'HW_CPU_X86_SVM',
    'HW_CPU_X86_TSX',
    'HW_CPU_X86_AVX512PF',
    'HW_CPU_X86_SSE41',
    'HW_CPU_X86_ASF',
    'HW_CPU_X86_SGX',
    'HW_CPU_X86_SSE',
    'HW_CPU_X86_SSSE3',
    'HW_CPU_X86_SHA',
    'HW_CPU_X86_TBM',
    'HW_CPU_X86_SSE42',
    'HW_CPU_X86_3DNOW',
    'HW_CPU_X86_BMI2',
    'HW_CPU_X86_AVX512BW',
    'HW_CPU_X86_XOP',
    'HW_CPU_X86_AVX2',
    'HW_CPU_X86_AVX512F',
    'HW_CPU_X86_SSE2',
    'HW_CPU_X86_FMA4',
    'HW_CPU_X86_AVX512ER']
