private static string GetFunctionBodyGetKnownMethodIndex(ulong mask) { var shifts = HttpUtilitiesGeneratorHelpers.GetShifts(mask); var maskHexString = HttpUtilitiesGeneratorHelpers.MaskToHexString(mask); string bodyString; if (shifts.Length > 0) { var bitsCount = HttpUtilitiesGeneratorHelpers.CountBits(mask); var tmpReturn = string.Empty; foreach (var item in shifts) { if (tmpReturn.Length > 0) { tmpReturn += " | "; } tmpReturn += string.Format(CultureInfo.InvariantCulture, "(tmp >> {1})", HttpUtilitiesGeneratorHelpers.MaskToHexString(item.Mask), item.Shift); } var mask2 = (ulong)(Math.Pow(2, bitsCount) - 1); string returnString = string.Format(CultureInfo.InvariantCulture, "return ({0}) & {1};", tmpReturn, HttpUtilitiesGeneratorHelpers.MaskToHexString(mask2)); bodyString = string.Format(CultureInfo.InvariantCulture, " const int magicNumer = {0};\r\n var tmp = (int)value & magicNumer;\r\n {1}", HttpUtilitiesGeneratorHelpers.MaskToHexString(mask), returnString); } else { bodyString = string.Format(CultureInfo.InvariantCulture, "return (int)(value & {0});", maskHexString); } return(bodyString); }