Reinitialize() 개인적인 메소드

private Reinitialize ( ConversionStorage toStr, Win32API self, [ libraryName, [ functionName, [ parameterTypes, [ returnType ) : Win32API
toStr ConversionStorage
self Win32API
libraryName [
functionName [
parameterTypes [
returnType [
리턴 Win32API
예제 #1
0
파일: Win32API.cs 프로젝트: yyyyj/ironruby
 public static Win32API /*!*/ Reinitialize(Win32API /*!*/ self,
                                           [DefaultProtocol, NotNull] MutableString /*!*/ libraryName,
                                           [DefaultProtocol, NotNull] MutableString /*!*/ functionName,
                                           [DefaultProtocol, NotNull] MutableString /*!*/ parameterTypes,
                                           [DefaultProtocol, NotNull] MutableString /*!*/ returnType)
 {
     return(self.Reinitialize(
                GetFunction(libraryName, functionName),
                MakeSignature(parameterTypes.GetByteCount(), parameterTypes.GetByte),
                returnType.IsEmpty ? ArgType.None : ToArgType(returnType.GetByte(0))
                ));
 }
예제 #2
0
파일: Win32API.cs 프로젝트: yyyyj/ironruby
 public static Win32API /*!*/ Reinitialize(
     ConversionStorage <MutableString> /*!*/ toStr,
     Win32API /*!*/ self,
     [DefaultProtocol, NotNull] MutableString /*!*/ libraryName,
     [DefaultProtocol, NotNull] MutableString /*!*/ functionName,
     [NotNull] IList /*!*/ parameterTypes,
     [DefaultProtocol, NotNull] MutableString /*!*/ returnType)
 {
     return(self.Reinitialize(
                GetFunction(libraryName, functionName),
                MakeSignature(parameterTypes.Count, (i) => {
         var str = Protocols.CastToString(toStr, parameterTypes[i]);
         return str.IsEmpty ? (byte)0 : str.GetByte(0);
     }),
                returnType.IsEmpty ? ArgType.None : ToArgType(returnType.GetByte(0))
                ));
 }
예제 #3
0
파일: Win32API.cs 프로젝트: jschementi/iron
        public static Win32API/*!*/ Reinitialize(
            ConversionStorage<MutableString>/*!*/ toStr,
            Win32API/*!*/ self,
            [DefaultProtocol, NotNull]MutableString/*!*/ libraryName,
            [DefaultProtocol, NotNull]MutableString/*!*/ functionName,
            [NotNull]IList/*!*/ parameterTypes,
            [DefaultProtocol, NotNull]MutableString/*!*/ returnType) {

            return self.Reinitialize(
                GetFunction(libraryName, functionName),
                MakeSignature(parameterTypes.Count, (i) => {
                    var str = Protocols.CastToString(toStr, parameterTypes[i]);
                    return str.IsEmpty ? (byte)0 : str.GetByte(0);
                }),
                returnType.IsEmpty ? ArgType.None : ToArgType(returnType.GetByte(0))
            );
        }
예제 #4
0
파일: Win32API.cs 프로젝트: jschementi/iron
        public static Win32API/*!*/ Reinitialize(Win32API/*!*/ self,
            [DefaultProtocol, NotNull]MutableString/*!*/ libraryName,
            [DefaultProtocol, NotNull]MutableString/*!*/ functionName,
            [DefaultProtocol, NotNull]MutableString/*!*/ parameterTypes,
            [DefaultProtocol, NotNull]MutableString/*!*/ returnType) {

            return self.Reinitialize(
                GetFunction(libraryName, functionName),
                MakeSignature(parameterTypes.GetByteCount(), parameterTypes.GetByte),
                returnType.IsEmpty ? ArgType.None : ToArgType(returnType.GetByte(0))
            );
        }