示例#1
0
 private static Variable PrepareVariable(string name, SolidityType type)
 {
     return(new Variable()
     {
         Name = name,
         Type = type
     });
 }
示例#2
0
        private static ContractProperty GetContractProperty(SolidityType vType, string vName, Visibility visibility)
        {
            var v = new Variable()
            {
                Name = vName,
                Type = vType
            };

            return(new ContractProperty()
            {
                Variable = v,
                Visibility = visibility
            });
        }
示例#3
0
 public void BytesM_Invalid(SolidityType solidityType, object input)
 {
     Assert.ThrowsAny <Exception>(() => SolidityUtil.AbiPack((solidityType, input)));
 }
示例#4
0
        public void Int_Signed(SolidityType solidityType, object input, string expectedResult)
        {
            var result = SolidityUtil.AbiPack((solidityType, input)).ToHexString(hexPrefix: true);

            Assert.Equal(expectedResult, result);
        }
示例#5
0
 public void GenerateCodeWithMemoryTest(SolidityType type, string expected)
 {
     Assert.AreEqual(expected, type.GenerateCode(true));
 }
示例#6
0
 public void GenerateCodeTest(SolidityType type, string expected)
 {
     Assert.AreEqual(expected, type.GenerateCode(false));
 }
示例#7
0
 public static bool IsComplexType(this SolidityType type)
 {
     return(ComplexTypes.Contains(type));
 }
示例#8
0
 private static string GenerateStorageTypeCode(SolidityType type) => type.IsComplexType() ? " memory" : string.Empty;
示例#9
0
 public static string GenerateCode(this SolidityType type, bool pointStorageTypeForComplexObjects)
 {
     return(AppropriateCode[type] + (pointStorageTypeForComplexObjects ? GenerateStorageTypeCode(type) : string.Empty));
 }