github.com/goplus/igop@v0.25.0/pkg/math/go118_export.go (about)

     1  // export by github.com/goplus/igop/cmd/qexp
     2  
     3  //go:build go1.18 && !go1.19
     4  // +build go1.18,!go1.19
     5  
     6  package math
     7  
     8  import (
     9  	q "math"
    10  
    11  	"go/constant"
    12  	"go/token"
    13  	"reflect"
    14  
    15  	"github.com/goplus/igop"
    16  )
    17  
    18  func init() {
    19  	igop.RegisterPackage(&igop.Package{
    20  		Name: "math",
    21  		Path: "math",
    22  		Deps: map[string]string{
    23  			"internal/cpu": "cpu",
    24  			"math/bits":    "bits",
    25  			"unsafe":       "unsafe",
    26  		},
    27  		Interfaces: map[string]reflect.Type{},
    28  		NamedTypes: map[string]reflect.Type{},
    29  		AliasTypes: map[string]reflect.Type{},
    30  		Vars:       map[string]reflect.Value{},
    31  		Funcs: map[string]reflect.Value{
    32  			"Abs":             reflect.ValueOf(q.Abs),
    33  			"Acos":            reflect.ValueOf(q.Acos),
    34  			"Acosh":           reflect.ValueOf(q.Acosh),
    35  			"Asin":            reflect.ValueOf(q.Asin),
    36  			"Asinh":           reflect.ValueOf(q.Asinh),
    37  			"Atan":            reflect.ValueOf(q.Atan),
    38  			"Atan2":           reflect.ValueOf(q.Atan2),
    39  			"Atanh":           reflect.ValueOf(q.Atanh),
    40  			"Cbrt":            reflect.ValueOf(q.Cbrt),
    41  			"Ceil":            reflect.ValueOf(q.Ceil),
    42  			"Copysign":        reflect.ValueOf(q.Copysign),
    43  			"Cos":             reflect.ValueOf(q.Cos),
    44  			"Cosh":            reflect.ValueOf(q.Cosh),
    45  			"Dim":             reflect.ValueOf(q.Dim),
    46  			"Erf":             reflect.ValueOf(q.Erf),
    47  			"Erfc":            reflect.ValueOf(q.Erfc),
    48  			"Erfcinv":         reflect.ValueOf(q.Erfcinv),
    49  			"Erfinv":          reflect.ValueOf(q.Erfinv),
    50  			"Exp":             reflect.ValueOf(q.Exp),
    51  			"Exp2":            reflect.ValueOf(q.Exp2),
    52  			"Expm1":           reflect.ValueOf(q.Expm1),
    53  			"FMA":             reflect.ValueOf(q.FMA),
    54  			"Float32bits":     reflect.ValueOf(q.Float32bits),
    55  			"Float32frombits": reflect.ValueOf(q.Float32frombits),
    56  			"Float64bits":     reflect.ValueOf(q.Float64bits),
    57  			"Float64frombits": reflect.ValueOf(q.Float64frombits),
    58  			"Floor":           reflect.ValueOf(q.Floor),
    59  			"Frexp":           reflect.ValueOf(q.Frexp),
    60  			"Gamma":           reflect.ValueOf(q.Gamma),
    61  			"Hypot":           reflect.ValueOf(q.Hypot),
    62  			"Ilogb":           reflect.ValueOf(q.Ilogb),
    63  			"Inf":             reflect.ValueOf(q.Inf),
    64  			"IsInf":           reflect.ValueOf(q.IsInf),
    65  			"IsNaN":           reflect.ValueOf(q.IsNaN),
    66  			"J0":              reflect.ValueOf(q.J0),
    67  			"J1":              reflect.ValueOf(q.J1),
    68  			"Jn":              reflect.ValueOf(q.Jn),
    69  			"Ldexp":           reflect.ValueOf(q.Ldexp),
    70  			"Lgamma":          reflect.ValueOf(q.Lgamma),
    71  			"Log":             reflect.ValueOf(q.Log),
    72  			"Log10":           reflect.ValueOf(q.Log10),
    73  			"Log1p":           reflect.ValueOf(q.Log1p),
    74  			"Log2":            reflect.ValueOf(q.Log2),
    75  			"Logb":            reflect.ValueOf(q.Logb),
    76  			"Max":             reflect.ValueOf(q.Max),
    77  			"Min":             reflect.ValueOf(q.Min),
    78  			"Mod":             reflect.ValueOf(q.Mod),
    79  			"Modf":            reflect.ValueOf(q.Modf),
    80  			"NaN":             reflect.ValueOf(q.NaN),
    81  			"Nextafter":       reflect.ValueOf(q.Nextafter),
    82  			"Nextafter32":     reflect.ValueOf(q.Nextafter32),
    83  			"Pow":             reflect.ValueOf(q.Pow),
    84  			"Pow10":           reflect.ValueOf(q.Pow10),
    85  			"Remainder":       reflect.ValueOf(q.Remainder),
    86  			"Round":           reflect.ValueOf(q.Round),
    87  			"RoundToEven":     reflect.ValueOf(q.RoundToEven),
    88  			"Signbit":         reflect.ValueOf(q.Signbit),
    89  			"Sin":             reflect.ValueOf(q.Sin),
    90  			"Sincos":          reflect.ValueOf(q.Sincos),
    91  			"Sinh":            reflect.ValueOf(q.Sinh),
    92  			"Sqrt":            reflect.ValueOf(q.Sqrt),
    93  			"Tan":             reflect.ValueOf(q.Tan),
    94  			"Tanh":            reflect.ValueOf(q.Tanh),
    95  			"Trunc":           reflect.ValueOf(q.Trunc),
    96  			"Y0":              reflect.ValueOf(q.Y0),
    97  			"Y1":              reflect.ValueOf(q.Y1),
    98  			"Yn":              reflect.ValueOf(q.Yn),
    99  		},
   100  		TypedConsts: map[string]igop.TypedConst{},
   101  		UntypedConsts: map[string]igop.UntypedConst{
   102  			"E":                      {"untyped float", constant.MakeFromLiteral("2.71828182845904523536028747135266249775724709369995957496696763", token.FLOAT, 0)},
   103  			"Ln10":                   {"untyped float", constant.MakeFromLiteral("2.3025850929940456840179914546843642076011014886287729760333279", token.FLOAT, 0)},
   104  			"Ln2":                    {"untyped float", constant.MakeFromLiteral("0.693147180559945309417232121458176568075500134360255254120680009", token.FLOAT, 0)},
   105  			"Log10E":                 {"untyped float", constant.BinaryOp(constant.MakeFromLiteral("10000000000000000000000000000000000000000000000000000000000000", token.INT, 0), token.QUO, constant.MakeFromLiteral("23025850929940456840179914546843642076011014886287729760333279", token.INT, 0))},
   106  			"Log2E":                  {"untyped float", constant.BinaryOp(constant.MakeFromLiteral("1000000000000000000000000000000000000000000000000000000000000000", token.INT, 0), token.QUO, constant.MakeFromLiteral("693147180559945309417232121458176568075500134360255254120680009", token.INT, 0))},
   107  			"MaxFloat32":             {"untyped float", constant.MakeFromLiteral("3.4028234663852885981170418348451692544e+38", token.FLOAT, 0)},
   108  			"MaxFloat64":             {"untyped float", constant.MakeFromLiteral("1.79769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368e+308", token.FLOAT, 0)},
   109  			"MaxInt":                 {"untyped int", constant.MakeInt64(int64(q.MaxInt))},
   110  			"MaxInt16":               {"untyped int", constant.MakeInt64(int64(q.MaxInt16))},
   111  			"MaxInt32":               {"untyped int", constant.MakeInt64(int64(q.MaxInt32))},
   112  			"MaxInt64":               {"untyped int", constant.MakeInt64(int64(q.MaxInt64))},
   113  			"MaxInt8":                {"untyped int", constant.MakeInt64(int64(q.MaxInt8))},
   114  			"MaxUint":                {"untyped int", constant.MakeUint64(uint64(q.MaxUint))},
   115  			"MaxUint16":              {"untyped int", constant.MakeInt64(int64(q.MaxUint16))},
   116  			"MaxUint32":              {"untyped int", constant.MakeInt64(int64(q.MaxUint32))},
   117  			"MaxUint64":              {"untyped int", constant.MakeUint64(uint64(q.MaxUint64))},
   118  			"MaxUint8":               {"untyped int", constant.MakeInt64(int64(q.MaxUint8))},
   119  			"MinInt":                 {"untyped int", constant.MakeInt64(int64(q.MinInt))},
   120  			"MinInt16":               {"untyped int", constant.MakeInt64(int64(q.MinInt16))},
   121  			"MinInt32":               {"untyped int", constant.MakeInt64(int64(q.MinInt32))},
   122  			"MinInt64":               {"untyped int", constant.MakeInt64(int64(q.MinInt64))},
   123  			"MinInt8":                {"untyped int", constant.MakeInt64(int64(q.MinInt8))},
   124  			"Phi":                    {"untyped float", constant.MakeFromLiteral("1.61803398874989484820458683436563811772030917980576286213544862", token.FLOAT, 0)},
   125  			"Pi":                     {"untyped float", constant.MakeFromLiteral("3.14159265358979323846264338327950288419716939937510582097494459", token.FLOAT, 0)},
   126  			"SmallestNonzeroFloat32": {"untyped float", constant.BinaryOp(constant.MakeFromLiteral("1", token.INT, 0), token.QUO, constant.MakeFromLiteral("713623846352979940529142984724747568191373312", token.INT, 0))},
   127  			"SmallestNonzeroFloat64": {"untyped float", constant.BinaryOp(constant.MakeFromLiteral("1", token.INT, 0), token.QUO, constant.MakeFromLiteral("202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784", token.INT, 0))},
   128  			"Sqrt2":                  {"untyped float", constant.MakeFromLiteral("1.41421356237309504880168872420969807856967187537694807317667974", token.FLOAT, 0)},
   129  			"SqrtE":                  {"untyped float", constant.MakeFromLiteral("1.64872127070012814684865078781416357165377610071014801157507931", token.FLOAT, 0)},
   130  			"SqrtPhi":                {"untyped float", constant.MakeFromLiteral("1.27201964951406896425242246173749149171560804184009624861664038", token.FLOAT, 0)},
   131  			"SqrtPi":                 {"untyped float", constant.MakeFromLiteral("1.77245385090551602729816748334114518279754945612238712821380779", token.FLOAT, 0)},
   132  		},
   133  	})
   134  }