コード例 #1
0
 public static void Create(IFunctionPointerTypeSymbol symbol, SymbolKeyWriter visitor)
 {
     visitor.WriteRefKind(symbol.Signature.RefKind);
     visitor.WriteSymbolKey(symbol.Signature.ReturnType);
     visitor.WriteRefKindArray(symbol.Signature.Parameters);
     visitor.WriteParameterTypesArray(symbol.Signature.Parameters);
 }
コード例 #2
0
            public static void Create(IFunctionPointerTypeSymbol symbol, SymbolKeyWriter visitor)
            {
                var callingConvention = symbol.Signature.CallingConvention;

                visitor.WriteInteger((int)callingConvention);

                if (callingConvention == SignatureCallingConvention.Unmanaged)
                {
                    visitor.WriteSymbolKeyArray(symbol.Signature.UnmanagedCallingConventionTypes);
                }

                visitor.WriteRefKind(symbol.Signature.RefKind);
                visitor.WriteSymbolKey(symbol.Signature.ReturnType);
                visitor.WriteRefKindArray(symbol.Signature.Parameters);
                visitor.WriteParameterTypesArray(symbol.Signature.Parameters);
            }