コード例 #1
0
ファイル: DecoderFactory.cs プロジェクト: zutobg/Meadow
        public static DecodeDelegate <TItem[]> GetArrayDecoder <TItem>(IAbiTypeEncoder <TItem> itemEncoder)
        {
            void Decode(AbiTypeInfo solidityType, ref AbiDecodeBuffer buff, out TItem[] val)
            {
                DecoderFactory.Decode(solidityType, ref buff, out val, itemEncoder);
            }

            return(Decode);
        }
コード例 #2
0
 public FixedArrayEncoderNonGeneric(IAbiTypeEncoder itemEncoder)
 {
     _itemEncoder = itemEncoder;
 }
コード例 #3
0
ファイル: DecoderFactory.cs プロジェクト: zutobg/Meadow
        public static void Decode <TItem>(AbiTypeInfo solidityType, ref AbiDecodeBuffer buff, out IEnumerable <TItem> val, IAbiTypeEncoder <TItem> itemEncoder)
        {
            AbiTypeEncoder <IEnumerable <TItem> > encoder;

            switch (solidityType.Category)
            {
            case SolidityTypeCategory.DynamicArray:
                encoder = new DynamicArrayEncoder <TItem>(itemEncoder);
                break;

            case SolidityTypeCategory.FixedArray:
                encoder = new FixedArrayEncoder <TItem>(itemEncoder);
                break;

            default:
                throw new ArgumentException($"Encoder factory for array types was called with a type '{solidityType.Category}'");
            }

            encoder.SetTypeInfo(solidityType);
            encoder.Decode(ref buff, out val);
        }
コード例 #4
0
ファイル: DecoderFactory.cs プロジェクト: zutobg/Meadow
 public static void Decode <TItem>(AbiTypeInfo solidityType, ref AbiDecodeBuffer buff, out TItem[] val, IAbiTypeEncoder <TItem> itemEncoder)
 {
     Decode(solidityType, ref buff, out IEnumerable <TItem> items, itemEncoder);
     val = items is TItem[] arr ? arr : items.ToArray();
 }
コード例 #5
0
 public DynamicArrayEncoder(IAbiTypeEncoder <TItem> itemEncoder)
 {
     _itemEncoder = itemEncoder;
 }
コード例 #6
0
 public FixedArrayEncoder(IAbiTypeEncoder <TItem> itemEncoder)
 {
     _itemEncoder = itemEncoder;
 }
コード例 #7
0
ファイル: EncoderExtensions.cs プロジェクト: zutobg/Meadow
 public static string ToEncodedHex(this IAbiTypeEncoder encoder)
 {
     return(GetHex(encoder));
 }
コード例 #8
0
 public AbiTypeEncoderUnboxer(IAbiTypeEncoder encoder)
 {
     _encoder = encoder;
 }
コード例 #9
0
 public DynamicArrayEncoderNonGeneric(IAbiTypeEncoder itemEncoder)
 {
     _itemEncoder = itemEncoder;
 }