Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • libcfa/src/math.trait.hfa

    r8a97248 r7d7ef6f  
    1010// Created On       : Fri Jul 16 15:40:52 2021
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Feb  2 11:36:56 2023
    13 // Update Count     : 20
     12// Last Modified On : Tue Jul 20 17:47:19 2021
     13// Update Count     : 19
    1414//
    1515
    1616#pragma once
    1717
    18 forall( U )
    19 trait Not {
     18trait Not( U ) {
    2019        void ?{}( U &, zero_t );
    2120        int !?( U );
    2221}; // Not
    2322
    24 forall( T | Not( T ) )
    25 trait Equality {
     23trait Equality( T | Not( T ) ) {
    2624        int ?==?( T, T );
    2725        int ?!=?( T, T );
    2826}; // Equality
    2927
    30 forall( U | Equality( U ) )
    31 trait Relational {
     28trait Relational( U | Equality( U ) ) {
    3229        int ?<?( U, U );
    3330        int ?<=?( U, U );
     
    3633}; // Relational
    3734
    38 forall ( T )
    39 trait Signed {
     35trait Signed( T ) {
    4036        T +?( T );
    4137        T -?( T );
     
    4339}; // Signed
    4440
    45 forall( U | Signed( U ) )
    46 trait Additive {
     41trait Additive( U | Signed( U ) ) {
    4742        U ?+?( U, U );
    4843        U ?-?( U, U );
     
    5146}; // Additive
    5247
    53 forall( T | Additive( T ) )
    54 trait Incdec {
     48trait Incdec( T | Additive( T ) ) {
    5549        void ?{}( T &, one_t );
    5650        // T ?++( T & );
     
    6054}; // Incdec
    6155
    62 forall( U | Incdec( U ) )
    63 trait Multiplicative {
     56trait Multiplicative( U | Incdec( U ) ) {
    6457        U ?*?( U, U );
    6558        U ?/?( U, U );
     
    6861}; // Multiplicative
    6962
    70 forall( T | Relational( T ) | Multiplicative( T ) )
    71 trait Arithmetic {
     63trait Arithmetic( T | Relational( T ) | Multiplicative( T ) ) {
    7264}; // Arithmetic
    7365
Note: See TracChangeset for help on using the changeset viewer.