Convert to switch expression.

This commit is contained in:
2022-11-13 19:59:23 +00:00
parent 02d6222ae9
commit f0bee36d9e
12 changed files with 1455 additions and 2504 deletions

View File

@@ -129,75 +129,27 @@ public static partial class Decoders
cid.ProductRevision & 0x0F).AppendLine();
sb.AppendFormat("\tProduct serial number: {0}", cid.ProductSerialNumber).AppendLine();
var year = "";
switch(cid.ManufacturingDate & 0x0F)
{
case 0:
year = "1997 or 2013";
break;
case 1:
year = "1998 or 2014";
break;
case 2:
year = "1999 or 2015";
break;
case 3:
year = "2000 or 2016";
break;
case 4:
year = "2001 or 2017";
break;
case 5:
year = "2002 or 2018";
break;
case 6:
year = "2003 or 2019";
break;
case 7:
year = "2004 or 2020";
break;
case 8:
year = "2005 or 2021";
break;
case 9:
year = "2006 or 2022";
break;
case 10:
year = "2007 or 2023";
break;
case 11:
year = "2008 or 2024";
break;
case 12:
year = "2009 or 2025";
break;
case 13:
year = "2010";
break;
case 14:
year = "2011";
break;
case 15:
year = "2012";
break;
}
string year = (cid.ManufacturingDate & 0x0F) switch
{
0 => "1997 or 2013",
1 => "1998 or 2014",
2 => "1999 or 2015",
3 => "2000 or 2016",
4 => "2001 or 2017",
5 => "2002 or 2018",
6 => "2003 or 2019",
7 => "2004 or 2020",
8 => "2005 or 2021",
9 => "2006 or 2022",
10 => "2007 or 2023",
11 => "2008 or 2024",
12 => "2009 or 2025",
13 => "2010",
14 => "2011",
15 => "2012",
_ => ""
};
sb.AppendFormat("\tDevice manufactured month {0} of {1}", (cid.ManufacturingDate & 0xF0) >> 4, year).
AppendLine();

View File

@@ -217,73 +217,26 @@ public static partial class Decoders
break;
}
switch((csd.TAAC & 0x78) >> 3)
{
case 0:
multiplier = 0;
break;
case 1:
multiplier = 1;
break;
case 2:
multiplier = 1.2;
break;
case 3:
multiplier = 1.3;
break;
case 4:
multiplier = 1.5;
break;
case 5:
multiplier = 2;
break;
case 6:
multiplier = 2.5;
break;
case 7:
multiplier = 3;
break;
case 8:
multiplier = 3.5;
break;
case 9:
multiplier = 4;
break;
case 10:
multiplier = 4.5;
break;
case 11:
multiplier = 5;
break;
case 12:
multiplier = 5.5;
break;
case 13:
multiplier = 6;
break;
case 14:
multiplier = 7;
break;
case 15:
multiplier = 8;
break;
}
multiplier = ((csd.TAAC & 0x78) >> 3) switch
{
0 => 0,
1 => 1,
2 => 1.2,
3 => 1.3,
4 => 1.5,
5 => 2,
6 => 2.5,
7 => 3,
8 => 3.5,
9 => 4,
10 => 4.5,
11 => 5,
12 => 5.5,
13 => 6,
14 => 7,
15 => 8,
_ => multiplier
};
double result = unitFactor * multiplier;
sb.AppendFormat("\tAsynchronous data access time is {0}{1}", result, unit).AppendLine();
@@ -317,73 +270,26 @@ public static partial class Decoders
break;
}
switch((csd.Speed & 0x78) >> 3)
{
case 0:
multiplier = 0;
break;
case 1:
multiplier = 1;
break;
case 2:
multiplier = 1.2;
break;
case 3:
multiplier = 1.3;
break;
case 4:
multiplier = 1.5;
break;
case 5:
multiplier = 2;
break;
case 6:
multiplier = 2.6;
break;
case 7:
multiplier = 3;
break;
case 8:
multiplier = 3.5;
break;
case 9:
multiplier = 4;
break;
case 10:
multiplier = 4.5;
break;
case 11:
multiplier = 5.2;
break;
case 12:
multiplier = 5.5;
break;
case 13:
multiplier = 6;
break;
case 14:
multiplier = 7;
break;
case 15:
multiplier = 8;
break;
}
multiplier = ((csd.Speed & 0x78) >> 3) switch
{
0 => 0,
1 => 1,
2 => 1.2,
3 => 1.3,
4 => 1.5,
5 => 2,
6 => 2.6,
7 => 3,
8 => 3.5,
9 => 4,
10 => 4.5,
11 => 5.2,
12 => 5.5,
13 => 6,
14 => 7,
15 => 8,
_ => multiplier
};
result = unitFactor * multiplier;
sb.AppendFormat("\tDevice's clock frequency: {0}{1}", result, unit).AppendLine();