private static TypeScriptInterfaceFunctionMember BuildApiInterfaceMember(IMethodInfo methodInfo, Func <ITypeInfo, TypeScriptType> buildAndImportType)
        {
            var result = new TypeScriptInterfaceFunctionMember(methodInfo.Name.ToLowerCamelCase(), GetMethodResult(methodInfo, buildAndImportType));

            result.Arguments.AddRange(
                methodInfo.GetParameters().Select(x => new TypeScriptArgumentDeclaration
            {
                Name = x.Name,
                Type = buildAndImportType(x.ParameterType)
            })
                );
            return(result);
        }
Example #2
0
        private IEnumerable <TypeScriptInterfaceFunctionMember> BuildApiInterfaceMember(TypeScriptUnit targetUnit, MethodInfo methodInfo,
                                                                                        Func <ICustomAttributeProvider, Type, TypeScriptType> buildAndImportType)
        {
            var result = new TypeScriptInterfaceFunctionMember(methodInfo.Name.ToLowerCamelCase(), GetMethodResult(targetUnit, methodInfo, buildAndImportType, false));

            result.Arguments.AddRange(
                methodInfo.GetParameters().Where(AcceptParameter).Select(x => new TypeScriptArgumentDeclaration
            {
                Name = x.Name,
                Type = buildAndImportType(x, x.ParameterType)
            })
                );
            yield return(result);
        }
Example #3
0
 private IEnumerable<TypeScriptInterfaceFunctionMember> BuildApiInterfaceMember(IMethodInfo methodInfo, Func<ITypeInfo, TypeScriptType> buildAndImportType, ITypeInfo controllerType)
 {
     var result = new TypeScriptInterfaceFunctionMember(
         methodInfo.Name.ToLowerCamelCase(),
         GetMethodResult(methodInfo, buildAndImportType)
         );
     result.Arguments.AddRange(
         methodInfo.GetParameters()
                   .Where(x => PassParameterToCall(x, controllerType))
                   .Select(x => new TypeScriptArgumentDeclaration
                       {
                           Name = x.Name,
                           Type = buildAndImportType(x.ParameterType)
                       })
         );
     yield return result;
 }