< Summary

Line coverage
100%
Covered lines: 44
Uncovered lines: 0
Coverable lines: 44
Total lines: 122
Line coverage: 100%
Branch coverage
100%
Covered branches: 8
Total branches: 8
Branch coverage: 100%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
File 1: Equals(...)100%66100%
File 1: Equals(...)100%22100%
File 1: op_Equality(...)100%11100%
File 1: op_Inequality(...)100%11100%
File 1: GetHashCode()100%11100%
File 2: .ctor(...)100%11100%
File 2: .ctor(...)100%11100%
File 2: .ctor(...)100%11100%
File 2: .ctor(...)100%11100%
File 2: get_X()100%11100%
File 2: set_X(...)100%11100%
File 2: get_Y()100%11100%
File 2: set_Y(...)100%11100%
File 2: get_Z()100%11100%
File 2: set_Z(...)100%11100%
File 2: get_W()100%11100%
File 2: set_W(...)100%11100%
File 2: op_Implicit(...)100%11100%
File 2: Deconstruct(...)100%11100%
File 2: ToVector4()100%11100%

File(s)

C:\projects\jeremyansel-media-wavefrontobj\JeremyAnsel.Media.WavefrontObj\JeremyAnsel.Media.WavefrontObj\obj\Release\net10.0\Equatable.SourceGenerator\Equatable.SourceGenerator.EquatableGenerator\JeremyAnsel.Media.WavefrontObj.ObjVector4.Equatable.g.cs

File 'C:\projects\jeremyansel-media-wavefrontobj\JeremyAnsel.Media.WavefrontObj\JeremyAnsel.Media.WavefrontObj\obj\Release\net10.0\Equatable.SourceGenerator\Equatable.SourceGenerator.EquatableGenerator\JeremyAnsel.Media.WavefrontObj.ObjVector4.Equatable.g.cs' does not exist (any more).

C:\projects\jeremyansel-media-wavefrontobj\JeremyAnsel.Media.WavefrontObj\JeremyAnsel.Media.WavefrontObj\ObjVector4.cs

#LineLine coverage
 1// <copyright file="ObjVector4.cs" company="Jérémy Ansel">
 2// Copyright (c) 2017, 2019 Jérémy Ansel
 3// </copyright>
 4// <license>
 5// Licensed under the MIT license. See LICENSE.txt
 6// </license>
 7
 8using Equatable.Attributes;
 9
 10namespace JeremyAnsel.Media.WavefrontObj;
 11
 12[System.Diagnostics.DebuggerDisplay("{X} {Y} {Z} {W}")]
 13[Equatable]
 14public partial struct ObjVector4
 15{
 16    public ObjVector4(System.Numerics.Vector4 v)
 17    {
 418        X = v.X;
 419        Y = v.Y;
 420        Z = v.Z;
 421        W = v.W;
 422    }
 23
 24    public ObjVector4(System.Numerics.Vector3 v, float w = 1.0f)
 25    {
 426        X = v.X;
 427        Y = v.Y;
 428        Z = v.Z;
 429        W = w;
 430    }
 31
 32    public ObjVector4(float x, float y, float z, float w)
 33    {
 434        X = x;
 435        Y = y;
 436        Z = z;
 437        W = w;
 438    }
 39
 40    public ObjVector4(float x, float y, float z)
 41    {
 442        X = x;
 443        Y = y;
 444        Z = z;
 445        W = 1.0f;
 446    }
 47
 448    public float X { get; set; }
 49
 450    public float Y { get; set; }
 51
 452    public float Z { get; set; }
 53
 454    public float W { get; set; }
 55
 56    public static implicit operator ObjVector4(System.Numerics.Vector4 v)
 57    {
 458        return new ObjVector4(v);
 59    }
 60
 61    public readonly void Deconstruct(out float @x, out float @y, out float @z, out float @w)
 62    {
 463        @x = X;
 464        @y = Y;
 465        @z = Z;
 466        @w = W;
 467    }
 68
 69    public readonly System.Numerics.Vector4 ToVector4()
 70    {
 471        return new System.Numerics.Vector4(X, Y, Z, W);
 72    }
 73}