public static Cons clYieldMethodTypeDeclarationTree(MethodSlot method) {
    if (!(method.methodFunctionP)) {
      return (null);
    }
    { Stella_Object cltype = StandardObject.lookupClTypeFromStellaType(method.slotBaseType);

      if (cltype != null) {
        return (((Cons)(Stella_Object.clConditionalizeTypeDeclarationTree(Cons.list$(Cons.cons(Stella.internCommonLispSymbol("FTYPE"), Cons.cons(Cons.list$(Cons.cons(Stella.internCommonLispSymbol("FUNCTION"), Cons.cons(MethodSlot.clYieldMethodArglistTypeDeclarations(method), Cons.cons(Cons.cons(MethodSlot.clYieldMethodReturnTypeDeclaration(method), Stella.NIL), Stella.NIL)))), Cons.cons(Symbol.clTranslateGlobalSymbol(Symbol.yieldRenamedNameIfNative(method.slotName, Stella.KWD_COMMON_LISP, Stella.KWD_FUNCTION)), Cons.cons(Stella.NIL, Stella.NIL)))))))));
      }
      else {
        return (null);
      }
    }
  }