Thrift 0.6.0 → 0.6.0.1
raw patch · 7 files changed
+18/−1095 lines, 7 filesdep ~networknew-uploaderPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: network
API changes (from Hackage documentation)
- Thrift.Transport: class Transport a
+ Thrift.Transport: class Transport a where tReadAll _ 0 = return mempty tReadAll a len = do { result <- tRead a len; let rlen = fromIntegral $ length result; when (rlen == 0) (throw $ TransportExn "Cannot read. Remote side has closed." TE_UNKNOWN); if len <= rlen then return result else (result `mappend`) `fmap` (tReadAll a (len - rlen)) }
Files
- Makefile +0/−475
- Makefile.am +0/−43
- Makefile.in +0/−475
- README +0/−89
- TODO +0/−2
- Thrift.cabal +1/−1
- src/Thrift/Transport/Handle.hs +17/−10
− Makefile
@@ -1,475 +0,0 @@-# Makefile.in generated by automake 1.11.1 from Makefile.am.-# lib/hs/Makefile. Generated from Makefile.in by configure.--# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,-# Inc.-# This Makefile.in is free software; the Free Software Foundation-# gives unlimited permission to copy and/or distribute it,-# with or without modifications, as long as this notice is preserved.--# This program is distributed in the hope that it will be useful,-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A-# PARTICULAR PURPOSE.----#-# Licensed to the Apache Software Foundation (ASF) under one-# or more contributor license agreements. See the NOTICE file-# distributed with this work for additional information-# regarding copyright ownership. The ASF licenses this file-# to you under the Apache License, Version 2.0 (the-# "License"); you may not use this file except in compliance-# with the License. You may obtain a copy of the License at-#-# http://www.apache.org/licenses/LICENSE-2.0-#-# Unless required by applicable law or agreed to in writing,-# software distributed under the License is distributed on an-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY-# KIND, either express or implied. See the License for the-# specific language governing permissions and limitations-# under the License.-#--pkgdatadir = $(datadir)/thrift-pkgincludedir = $(includedir)/thrift-pkglibdir = $(libdir)/thrift-pkglibexecdir = $(libexecdir)/thrift-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd-install_sh_DATA = $(install_sh) -c -m 644-install_sh_PROGRAM = $(install_sh) -c-install_sh_SCRIPT = $(install_sh) -c-INSTALL_HEADER = $(INSTALL_DATA)-transform = $(program_transform_name)-NORMAL_INSTALL = :-PRE_INSTALL = :-POST_INSTALL = :-NORMAL_UNINSTALL = :-PRE_UNINSTALL = :-POST_UNINSTALL = :-build_triplet = x86_64-apple-darwin10.6.0-host_triplet = x86_64-apple-darwin10.6.0-subdir = lib/hs-DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in TODO-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4-am__aclocal_m4_deps = $(top_srcdir)/aclocal/ax_boost_base.m4 \- $(top_srcdir)/aclocal/ax_javac_and_java.m4 \- $(top_srcdir)/aclocal/ax_lib_event.m4 \- $(top_srcdir)/aclocal/ax_lib_zlib.m4 \- $(top_srcdir)/aclocal/ax_prog_perl_modules.m4 \- $(top_srcdir)/aclocal/ax_signed_right_shift.m4 \- $(top_srcdir)/aclocal/ax_thrift_internal.m4 \- $(top_srcdir)/aclocal/libtool.m4 \- $(top_srcdir)/aclocal/ltoptions.m4 \- $(top_srcdir)/aclocal/ltsugar.m4 \- $(top_srcdir)/aclocal/ltversion.m4 \- $(top_srcdir)/aclocal/lt~obsolete.m4 \- $(top_srcdir)/configure.ac-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \- $(ACLOCAL_M4)-mkinstalldirs = $(install_sh) -d-CONFIG_HEADER = $(top_builddir)/config.h-CONFIG_CLEAN_FILES =-CONFIG_CLEAN_VPATH_FILES =-SOURCES =-DIST_SOURCES =-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)-ACLOCAL = ${SHELL} /Users/kirk/Downloads/thrift-0.6.0/missing --run aclocal-1.11-ALLOCA = -AMTAR = ${SHELL} /Users/kirk/Downloads/thrift-0.6.0/missing --run tar-ANT = -ANT_FLAGS = -AR = ar-AUTOCONF = ${SHELL} /Users/kirk/Downloads/thrift-0.6.0/missing --run autoconf-AUTOHEADER = ${SHELL} /Users/kirk/Downloads/thrift-0.6.0/missing --run autoheader-AUTOMAKE = ${SHELL} /Users/kirk/Downloads/thrift-0.6.0/missing --run automake-1.11-AWK = gawk-BOOST_CPPFLAGS = -I/opt/local/include-BOOST_LDFLAGS = -L/opt/local/lib-BOOST_ROOT_PATH = /opt/local-CABAL = true-CABAL_CONFIGURE_FLAGS = -CC = gcc-CCDEPMODE = depmode=gcc3-CFLAGS = -g -O2-CLASSPATH = -CPP = gcc -E-CPPFLAGS = -CXX = g++-CXXCPP = g++ -E-CXXDEPMODE = depmode=gcc3-CXXFLAGS = -g -O2-CYGPATH_W = echo-DEFS = -DHAVE_CONFIG_H-DEPDIR = .deps-DSYMUTIL = dsymutil-DUMPBIN = -ECHO_C = -ECHO_N = -n-ECHO_T = -EGREP = /usr/bin/grep -E-ENABLE_COVERAGE = 2-ERL = -ERLANG_INSTALL_LIB_DIR = -ERLANG_INSTALL_LIB_DIR_thrift = -ERLANG_LIB_DIR = -ERLC = -ERLCFLAGS = -EXEEXT = -FGREP = /usr/bin/grep -F-GCOV_CFLAGS = -GCOV_CXXFLAGS = -GCOV_LDFLAGS = -GLIB_CFLAGS = -GLIB_LIBS = -GOBJECT_CFLAGS = -GOBJECT_LIBS = -GREP = /usr/bin/grep-INSTALL = /opt/local/bin/ginstall -c-INSTALL_DATA = ${INSTALL} -m 644-INSTALL_PROGRAM = ${INSTALL}-INSTALL_SCRIPT = ${INSTALL}-INSTALL_STRIP_PROGRAM = $(install_sh) -c -s-JAVA_PREFIX = /usr/local/lib-LD = /usr/libexec/gcc/i686-apple-darwin10/4.2.1/ld-LDFLAGS = -LEX = flex-LEXLIB = -lfl-LEX_OUTPUT_ROOT = lex.yy-LIBEVENT_CPPFLAGS = -LIBEVENT_LDFLAGS = -LIBEVENT_LIBS = -LIBOBJS = ${LIBOBJDIR}lstat$U.o-LIBS = -lpthread -LIBTOOL = $(SHELL) $(top_builddir)/libtool-LIPO = lipo-LN_S = ln -s-LTLIBOBJS = ${LIBOBJDIR}lstat$U.lo-MAKEINFO = ${SHELL} /Users/kirk/Downloads/thrift-0.6.0/missing --run makeinfo-MKDIR_P = /opt/local/bin/gmkdir -p-MONO_CFLAGS = -MONO_LIBS = -NM = /usr/bin/nm-NMEDIT = nmedit-OBJDUMP = false-OBJEXT = o-OTOOL = otool-OTOOL64 = :-PACKAGE = thrift-PACKAGE_BUGREPORT = -PACKAGE_NAME = thrift-PACKAGE_STRING = thrift 0.6.0-PACKAGE_TARNAME = thrift-PACKAGE_URL = -PACKAGE_VERSION = 0.6.0-PATH_SEPARATOR = :-PERL = -PERL_PREFIX = /usr/local-PHP = -PHP_CONFIG = -PHP_CONFIG_PREFIX = /etc/php.d-PHP_PREFIX = /usr/lib/php-PKG_CONFIG = -PKG_CONFIG_LIBDIR = -PKG_CONFIG_PATH = -PYTHON = -PYTHON_EXEC_PREFIX = -PYTHON_PLATFORM = -PYTHON_PREFIX = -PYTHON_VERSION = -PY_PREFIX = /usr-RANLIB = ranlib-RSPEC = -RUBY = -RUBY_PREFIX = -RUNHASKELL = true-SED = /usr/bin/sed-SET_MAKE = -SHELL = /bin/sh-STRIP = strip-TRIAL = /usr/bin/trial-VERSION = 0.6.0-YACC = bison -y-YFLAGS = -ZLIB_CPPFLAGS = -ZLIB_LDFLAGS = -ZLIB_LIBS = -lz-abs_builddir = /Users/kirk/Downloads/thrift-0.6.0/lib/hs-abs_srcdir = /Users/kirk/Downloads/thrift-0.6.0/lib/hs-abs_top_builddir = /Users/kirk/Downloads/thrift-0.6.0-abs_top_srcdir = /Users/kirk/Downloads/thrift-0.6.0-ac_ct_CC = gcc-ac_ct_CXX = g++-ac_ct_DUMPBIN = -am__include = include-am__leading_dot = .-am__quote = -am__tar = ${AMTAR} chof - "$$tardir"-am__untar = ${AMTAR} xf --bindir = ${exec_prefix}/bin-build = x86_64-apple-darwin10.6.0-build_alias = -build_cpu = x86_64-build_os = darwin10.6.0-build_vendor = apple-builddir = .-datadir = ${datarootdir}-datarootdir = ${prefix}/share-docdir = ${datarootdir}/doc/${PACKAGE_TARNAME}-dvidir = ${docdir}-exec_prefix = ${prefix}-host = x86_64-apple-darwin10.6.0-host_alias = -host_cpu = x86_64-host_os = darwin10.6.0-host_vendor = apple-htmldir = ${docdir}-includedir = ${prefix}/include-infodir = ${datarootdir}/info-install_sh = ${SHELL} /Users/kirk/Downloads/thrift-0.6.0/install-sh-libdir = ${exec_prefix}/lib-libexecdir = ${exec_prefix}/libexec-localedir = ${datarootdir}/locale-localstatedir = ${prefix}/var-lt_ECHO = echo-mandir = ${datarootdir}/man-mkdir_p = /opt/local/bin/gmkdir -p-oldincludedir = /usr/include-pdfdir = ${docdir}-pkgpyexecdir = -pkgpythondir = -prefix = /Users/kirk/Software/thrift-0.6.0-program_transform_name = s,x,x,-psdir = ${docdir}-pyexecdir = -pythondir = -sbindir = ${exec_prefix}/sbin-sharedstatedir = ${prefix}/com-srcdir = .-subdirs = -sysconfdir = ${prefix}/etc-target_alias = -top_build_prefix = ../../-top_builddir = ../..-top_srcdir = ../..-EXTRA_DIST = \- LICENSE \- README \- Setup.lhs \- TODO \- Thrift.cabal \- src--all: all-am--.SUFFIXES:-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)- @for dep in $?; do \- case '$(am__configure_deps)' in \- *$$dep*) \- ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \- && { if test -f $@; then exit 0; else break; fi; }; \- exit 1;; \- esac; \- done; \- echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign lib/hs/Makefile'; \- $(am__cd) $(top_srcdir) && \- $(AUTOMAKE) --foreign lib/hs/Makefile-.PRECIOUS: Makefile-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status- @case '$?' in \- *config.status*) \- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \- *) \- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \- esac;--$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh--$(top_srcdir)/configure: $(am__configure_deps)- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh-$(ACLOCAL_M4): $(am__aclocal_m4_deps)- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh-$(am__aclocal_m4_deps):--mostlyclean-libtool:- -rm -f *.lo--clean-libtool:- -rm -rf .libs _libs-tags: TAGS-TAGS:--ctags: CTAGS-CTAGS:---distdir: $(DISTFILES)- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \- list='$(DISTFILES)'; \- dist_files=`for file in $$list; do echo $$file; done | \- sed -e "s|^$$srcdirstrip/||;t" \- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \- case $$dist_files in \- */*) $(MKDIR_P) `echo "$$dist_files" | \- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \- sort -u` ;; \- esac; \- for file in $$dist_files; do \- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \- if test -d $$d/$$file; then \- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \- if test -d "$(distdir)/$$file"; then \- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \- fi; \- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \- fi; \- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \- else \- test -f "$(distdir)/$$file" \- || cp -p $$d/$$file "$(distdir)/$$file" \- || exit 1; \- fi; \- done-check-am: all-am- $(MAKE) $(AM_MAKEFLAGS) check-local-check: check-am-all-am: Makefile all-local-installdirs:-install: install-am-install-exec: install-exec-am-install-data: install-data-am-uninstall: uninstall-am--install-am: all-am- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am--installcheck: installcheck-am-install-strip:- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \- `test -z '$(STRIP)' || \- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install-mostlyclean-generic:--clean-generic:--distclean-generic:- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)--maintainer-clean-generic:- @echo "This command is intended for maintainers to use"- @echo "it deletes files that may require special tools to rebuild."-clean: clean-am--clean-am: clean-generic clean-libtool clean-local mostlyclean-am--distclean: distclean-am- -rm -f Makefile-distclean-am: clean-am distclean-generic--dvi: dvi-am--dvi-am:--html: html-am--html-am:--info: info-am--info-am:--install-data-am:--install-dvi: install-dvi-am--install-dvi-am:--install-exec-am:- @$(NORMAL_INSTALL)- $(MAKE) $(AM_MAKEFLAGS) install-exec-hook-install-html: install-html-am--install-html-am:--install-info: install-info-am--install-info-am:--install-man:--install-pdf: install-pdf-am--install-pdf-am:--install-ps: install-ps-am--install-ps-am:--installcheck-am:--maintainer-clean: maintainer-clean-am- -rm -f Makefile-maintainer-clean-am: distclean-am maintainer-clean-generic \- maintainer-clean-local--mostlyclean: mostlyclean-am--mostlyclean-am: mostlyclean-generic mostlyclean-libtool--pdf: pdf-am--pdf-am:--ps: ps-am--ps-am:--uninstall-am:--.MAKE: check-am install-am install-exec-am install-strip--.PHONY: all all-am all-local check check-am check-local clean \- clean-generic clean-libtool clean-local distclean \- distclean-generic distclean-libtool distdir dvi dvi-am html \- html-am info info-am install install-am install-data \- install-data-am install-dvi install-dvi-am install-exec \- install-exec-am install-exec-hook install-html install-html-am \- install-info install-info-am install-man install-pdf \- install-pdf-am install-ps install-ps-am install-strip \- installcheck installcheck-am installdirs maintainer-clean \- maintainer-clean-generic maintainer-clean-local mostlyclean \- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \- uninstall uninstall-am---all-local:- $(RUNHASKELL) Setup.lhs configure $(CABAL_CONFIGURE_FLAGS)- $(RUNHASKELL) Setup.lhs build--install-exec-hook:- $(RUNHASKELL) Setup.lhs install--# Make sure this doesn't fail if Haskell is not configured.-clean-local:- $(RUNHASKELL) Setup.lhs clean--maintainer-clean-local:- $(RUNHASKELL) Setup.lhs clean--check-local:- $(CABAL) check--# Tell versions [3.59,3.63) of GNU make to not export all variables.-# Otherwise a system limit (for SysV at least) may be exceeded.-.NOEXPORT:
− Makefile.am
@@ -1,43 +0,0 @@-#-# Licensed to the Apache Software Foundation (ASF) under one-# or more contributor license agreements. See the NOTICE file-# distributed with this work for additional information-# regarding copyright ownership. The ASF licenses this file-# to you under the Apache License, Version 2.0 (the-# "License"); you may not use this file except in compliance-# with the License. You may obtain a copy of the License at-#-# http://www.apache.org/licenses/LICENSE-2.0-#-# Unless required by applicable law or agreed to in writing,-# software distributed under the License is distributed on an-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY-# KIND, either express or implied. See the License for the-# specific language governing permissions and limitations-# under the License.-#--EXTRA_DIST = \- LICENSE \- README \- Setup.lhs \- TODO \- Thrift.cabal \- src--all-local:- $(RUNHASKELL) Setup.lhs configure $(CABAL_CONFIGURE_FLAGS)- $(RUNHASKELL) Setup.lhs build--install-exec-hook:- $(RUNHASKELL) Setup.lhs install--# Make sure this doesn't fail if Haskell is not configured.-clean-local:- $(RUNHASKELL) Setup.lhs clean--maintainer-clean-local:- $(RUNHASKELL) Setup.lhs clean--check-local:- $(CABAL) check
− Makefile.in
@@ -1,475 +0,0 @@-# Makefile.in generated by automake 1.11.1 from Makefile.am.-# @configure_input@--# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,-# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,-# Inc.-# This Makefile.in is free software; the Free Software Foundation-# gives unlimited permission to copy and/or distribute it,-# with or without modifications, as long as this notice is preserved.--# This program is distributed in the hope that it will be useful,-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A-# PARTICULAR PURPOSE.--@SET_MAKE@--#-# Licensed to the Apache Software Foundation (ASF) under one-# or more contributor license agreements. See the NOTICE file-# distributed with this work for additional information-# regarding copyright ownership. The ASF licenses this file-# to you under the Apache License, Version 2.0 (the-# "License"); you may not use this file except in compliance-# with the License. You may obtain a copy of the License at-#-# http://www.apache.org/licenses/LICENSE-2.0-#-# Unless required by applicable law or agreed to in writing,-# software distributed under the License is distributed on an-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY-# KIND, either express or implied. See the License for the-# specific language governing permissions and limitations-# under the License.-#-VPATH = @srcdir@-pkgdatadir = $(datadir)/@PACKAGE@-pkgincludedir = $(includedir)/@PACKAGE@-pkglibdir = $(libdir)/@PACKAGE@-pkglibexecdir = $(libexecdir)/@PACKAGE@-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd-install_sh_DATA = $(install_sh) -c -m 644-install_sh_PROGRAM = $(install_sh) -c-install_sh_SCRIPT = $(install_sh) -c-INSTALL_HEADER = $(INSTALL_DATA)-transform = $(program_transform_name)-NORMAL_INSTALL = :-PRE_INSTALL = :-POST_INSTALL = :-NORMAL_UNINSTALL = :-PRE_UNINSTALL = :-POST_UNINSTALL = :-build_triplet = @build@-host_triplet = @host@-subdir = lib/hs-DIST_COMMON = README $(srcdir)/Makefile.am $(srcdir)/Makefile.in TODO-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4-am__aclocal_m4_deps = $(top_srcdir)/aclocal/ax_boost_base.m4 \- $(top_srcdir)/aclocal/ax_javac_and_java.m4 \- $(top_srcdir)/aclocal/ax_lib_event.m4 \- $(top_srcdir)/aclocal/ax_lib_zlib.m4 \- $(top_srcdir)/aclocal/ax_prog_perl_modules.m4 \- $(top_srcdir)/aclocal/ax_signed_right_shift.m4 \- $(top_srcdir)/aclocal/ax_thrift_internal.m4 \- $(top_srcdir)/aclocal/libtool.m4 \- $(top_srcdir)/aclocal/ltoptions.m4 \- $(top_srcdir)/aclocal/ltsugar.m4 \- $(top_srcdir)/aclocal/ltversion.m4 \- $(top_srcdir)/aclocal/lt~obsolete.m4 \- $(top_srcdir)/configure.ac-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \- $(ACLOCAL_M4)-mkinstalldirs = $(install_sh) -d-CONFIG_HEADER = $(top_builddir)/config.h-CONFIG_CLEAN_FILES =-CONFIG_CLEAN_VPATH_FILES =-SOURCES =-DIST_SOURCES =-DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)-ACLOCAL = @ACLOCAL@-ALLOCA = @ALLOCA@-AMTAR = @AMTAR@-ANT = @ANT@-ANT_FLAGS = @ANT_FLAGS@-AR = @AR@-AUTOCONF = @AUTOCONF@-AUTOHEADER = @AUTOHEADER@-AUTOMAKE = @AUTOMAKE@-AWK = @AWK@-BOOST_CPPFLAGS = @BOOST_CPPFLAGS@-BOOST_LDFLAGS = @BOOST_LDFLAGS@-BOOST_ROOT_PATH = @BOOST_ROOT_PATH@-CABAL = @CABAL@-CABAL_CONFIGURE_FLAGS = @CABAL_CONFIGURE_FLAGS@-CC = @CC@-CCDEPMODE = @CCDEPMODE@-CFLAGS = @CFLAGS@-CLASSPATH = @CLASSPATH@-CPP = @CPP@-CPPFLAGS = @CPPFLAGS@-CXX = @CXX@-CXXCPP = @CXXCPP@-CXXDEPMODE = @CXXDEPMODE@-CXXFLAGS = @CXXFLAGS@-CYGPATH_W = @CYGPATH_W@-DEFS = @DEFS@-DEPDIR = @DEPDIR@-DSYMUTIL = @DSYMUTIL@-DUMPBIN = @DUMPBIN@-ECHO_C = @ECHO_C@-ECHO_N = @ECHO_N@-ECHO_T = @ECHO_T@-EGREP = @EGREP@-ENABLE_COVERAGE = @ENABLE_COVERAGE@-ERL = @ERL@-ERLANG_INSTALL_LIB_DIR = @ERLANG_INSTALL_LIB_DIR@-ERLANG_INSTALL_LIB_DIR_thrift = @ERLANG_INSTALL_LIB_DIR_thrift@-ERLANG_LIB_DIR = @ERLANG_LIB_DIR@-ERLC = @ERLC@-ERLCFLAGS = @ERLCFLAGS@-EXEEXT = @EXEEXT@-FGREP = @FGREP@-GCOV_CFLAGS = @GCOV_CFLAGS@-GCOV_CXXFLAGS = @GCOV_CXXFLAGS@-GCOV_LDFLAGS = @GCOV_LDFLAGS@-GLIB_CFLAGS = @GLIB_CFLAGS@-GLIB_LIBS = @GLIB_LIBS@-GOBJECT_CFLAGS = @GOBJECT_CFLAGS@-GOBJECT_LIBS = @GOBJECT_LIBS@-GREP = @GREP@-INSTALL = @INSTALL@-INSTALL_DATA = @INSTALL_DATA@-INSTALL_PROGRAM = @INSTALL_PROGRAM@-INSTALL_SCRIPT = @INSTALL_SCRIPT@-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@-JAVA_PREFIX = @JAVA_PREFIX@-LD = @LD@-LDFLAGS = @LDFLAGS@-LEX = @LEX@-LEXLIB = @LEXLIB@-LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@-LIBEVENT_CPPFLAGS = @LIBEVENT_CPPFLAGS@-LIBEVENT_LDFLAGS = @LIBEVENT_LDFLAGS@-LIBEVENT_LIBS = @LIBEVENT_LIBS@-LIBOBJS = @LIBOBJS@-LIBS = @LIBS@-LIBTOOL = @LIBTOOL@-LIPO = @LIPO@-LN_S = @LN_S@-LTLIBOBJS = @LTLIBOBJS@-MAKEINFO = @MAKEINFO@-MKDIR_P = @MKDIR_P@-MONO_CFLAGS = @MONO_CFLAGS@-MONO_LIBS = @MONO_LIBS@-NM = @NM@-NMEDIT = @NMEDIT@-OBJDUMP = @OBJDUMP@-OBJEXT = @OBJEXT@-OTOOL = @OTOOL@-OTOOL64 = @OTOOL64@-PACKAGE = @PACKAGE@-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@-PACKAGE_NAME = @PACKAGE_NAME@-PACKAGE_STRING = @PACKAGE_STRING@-PACKAGE_TARNAME = @PACKAGE_TARNAME@-PACKAGE_URL = @PACKAGE_URL@-PACKAGE_VERSION = @PACKAGE_VERSION@-PATH_SEPARATOR = @PATH_SEPARATOR@-PERL = @PERL@-PERL_PREFIX = @PERL_PREFIX@-PHP = @PHP@-PHP_CONFIG = @PHP_CONFIG@-PHP_CONFIG_PREFIX = @PHP_CONFIG_PREFIX@-PHP_PREFIX = @PHP_PREFIX@-PKG_CONFIG = @PKG_CONFIG@-PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@-PKG_CONFIG_PATH = @PKG_CONFIG_PATH@-PYTHON = @PYTHON@-PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@-PYTHON_PLATFORM = @PYTHON_PLATFORM@-PYTHON_PREFIX = @PYTHON_PREFIX@-PYTHON_VERSION = @PYTHON_VERSION@-PY_PREFIX = @PY_PREFIX@-RANLIB = @RANLIB@-RSPEC = @RSPEC@-RUBY = @RUBY@-RUBY_PREFIX = @RUBY_PREFIX@-RUNHASKELL = @RUNHASKELL@-SED = @SED@-SET_MAKE = @SET_MAKE@-SHELL = @SHELL@-STRIP = @STRIP@-TRIAL = @TRIAL@-VERSION = @VERSION@-YACC = @YACC@-YFLAGS = @YFLAGS@-ZLIB_CPPFLAGS = @ZLIB_CPPFLAGS@-ZLIB_LDFLAGS = @ZLIB_LDFLAGS@-ZLIB_LIBS = @ZLIB_LIBS@-abs_builddir = @abs_builddir@-abs_srcdir = @abs_srcdir@-abs_top_builddir = @abs_top_builddir@-abs_top_srcdir = @abs_top_srcdir@-ac_ct_CC = @ac_ct_CC@-ac_ct_CXX = @ac_ct_CXX@-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@-am__include = @am__include@-am__leading_dot = @am__leading_dot@-am__quote = @am__quote@-am__tar = @am__tar@-am__untar = @am__untar@-bindir = @bindir@-build = @build@-build_alias = @build_alias@-build_cpu = @build_cpu@-build_os = @build_os@-build_vendor = @build_vendor@-builddir = @builddir@-datadir = @datadir@-datarootdir = @datarootdir@-docdir = @docdir@-dvidir = @dvidir@-exec_prefix = @exec_prefix@-host = @host@-host_alias = @host_alias@-host_cpu = @host_cpu@-host_os = @host_os@-host_vendor = @host_vendor@-htmldir = @htmldir@-includedir = @includedir@-infodir = @infodir@-install_sh = @install_sh@-libdir = @libdir@-libexecdir = @libexecdir@-localedir = @localedir@-localstatedir = @localstatedir@-lt_ECHO = @lt_ECHO@-mandir = @mandir@-mkdir_p = @mkdir_p@-oldincludedir = @oldincludedir@-pdfdir = @pdfdir@-pkgpyexecdir = @pkgpyexecdir@-pkgpythondir = @pkgpythondir@-prefix = @prefix@-program_transform_name = @program_transform_name@-psdir = @psdir@-pyexecdir = @pyexecdir@-pythondir = @pythondir@-sbindir = @sbindir@-sharedstatedir = @sharedstatedir@-srcdir = @srcdir@-subdirs = @subdirs@-sysconfdir = @sysconfdir@-target_alias = @target_alias@-top_build_prefix = @top_build_prefix@-top_builddir = @top_builddir@-top_srcdir = @top_srcdir@-EXTRA_DIST = \- LICENSE \- README \- Setup.lhs \- TODO \- Thrift.cabal \- src--all: all-am--.SUFFIXES:-$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)- @for dep in $?; do \- case '$(am__configure_deps)' in \- *$$dep*) \- ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \- && { if test -f $@; then exit 0; else break; fi; }; \- exit 1;; \- esac; \- done; \- echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign lib/hs/Makefile'; \- $(am__cd) $(top_srcdir) && \- $(AUTOMAKE) --foreign lib/hs/Makefile-.PRECIOUS: Makefile-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status- @case '$?' in \- *config.status*) \- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \- *) \- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \- esac;--$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh--$(top_srcdir)/configure: $(am__configure_deps)- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh-$(ACLOCAL_M4): $(am__aclocal_m4_deps)- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh-$(am__aclocal_m4_deps):--mostlyclean-libtool:- -rm -f *.lo--clean-libtool:- -rm -rf .libs _libs-tags: TAGS-TAGS:--ctags: CTAGS-CTAGS:---distdir: $(DISTFILES)- @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \- topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \- list='$(DISTFILES)'; \- dist_files=`for file in $$list; do echo $$file; done | \- sed -e "s|^$$srcdirstrip/||;t" \- -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \- case $$dist_files in \- */*) $(MKDIR_P) `echo "$$dist_files" | \- sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \- sort -u` ;; \- esac; \- for file in $$dist_files; do \- if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \- if test -d $$d/$$file; then \- dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \- if test -d "$(distdir)/$$file"; then \- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \- fi; \- if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \- cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \- find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \- fi; \- cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \- else \- test -f "$(distdir)/$$file" \- || cp -p $$d/$$file "$(distdir)/$$file" \- || exit 1; \- fi; \- done-check-am: all-am- $(MAKE) $(AM_MAKEFLAGS) check-local-check: check-am-all-am: Makefile all-local-installdirs:-install: install-am-install-exec: install-exec-am-install-data: install-data-am-uninstall: uninstall-am--install-am: all-am- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am--installcheck: installcheck-am-install-strip:- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \- `test -z '$(STRIP)' || \- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install-mostlyclean-generic:--clean-generic:--distclean-generic:- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)- -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)--maintainer-clean-generic:- @echo "This command is intended for maintainers to use"- @echo "it deletes files that may require special tools to rebuild."-clean: clean-am--clean-am: clean-generic clean-libtool clean-local mostlyclean-am--distclean: distclean-am- -rm -f Makefile-distclean-am: clean-am distclean-generic--dvi: dvi-am--dvi-am:--html: html-am--html-am:--info: info-am--info-am:--install-data-am:--install-dvi: install-dvi-am--install-dvi-am:--install-exec-am:- @$(NORMAL_INSTALL)- $(MAKE) $(AM_MAKEFLAGS) install-exec-hook-install-html: install-html-am--install-html-am:--install-info: install-info-am--install-info-am:--install-man:--install-pdf: install-pdf-am--install-pdf-am:--install-ps: install-ps-am--install-ps-am:--installcheck-am:--maintainer-clean: maintainer-clean-am- -rm -f Makefile-maintainer-clean-am: distclean-am maintainer-clean-generic \- maintainer-clean-local--mostlyclean: mostlyclean-am--mostlyclean-am: mostlyclean-generic mostlyclean-libtool--pdf: pdf-am--pdf-am:--ps: ps-am--ps-am:--uninstall-am:--.MAKE: check-am install-am install-exec-am install-strip--.PHONY: all all-am all-local check check-am check-local clean \- clean-generic clean-libtool clean-local distclean \- distclean-generic distclean-libtool distdir dvi dvi-am html \- html-am info info-am install install-am install-data \- install-data-am install-dvi install-dvi-am install-exec \- install-exec-am install-exec-hook install-html install-html-am \- install-info install-info-am install-man install-pdf \- install-pdf-am install-ps install-ps-am install-strip \- installcheck installcheck-am installdirs maintainer-clean \- maintainer-clean-generic maintainer-clean-local mostlyclean \- mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \- uninstall uninstall-am---all-local:- $(RUNHASKELL) Setup.lhs configure $(CABAL_CONFIGURE_FLAGS)- $(RUNHASKELL) Setup.lhs build--install-exec-hook:- $(RUNHASKELL) Setup.lhs install--# Make sure this doesn't fail if Haskell is not configured.-clean-local:- $(RUNHASKELL) Setup.lhs clean--maintainer-clean-local:- $(RUNHASKELL) Setup.lhs clean--check-local:- $(CABAL) check--# Tell versions [3.59,3.63) of GNU make to not export all variables.-# Otherwise a system limit (for SysV at least) may be exceeded.-.NOEXPORT:
− README
@@ -1,89 +0,0 @@-Haskell Thrift Bindings--License-=======--Licensed to the Apache Software Foundation (ASF) under one-or more contributor license agreements. See the NOTICE file-distributed with this work for additional information-regarding copyright ownership. The ASF licenses this file-to you under the Apache License, Version 2.0 (the-"License"); you may not use this file except in compliance-with the License. You may obtain a copy of the License at-- http://www.apache.org/licenses/LICENSE-2.0--Unless required by applicable law or agreed to in writing,-software distributed under the License is distributed on an-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY-KIND, either express or implied. See the License for the-specific language governing permissions and limitations-under the License.--Compile-=======--Use Cabal to compile and install; ./configure uses Cabal underneath, and that-path is not yet well tested. Thrift's library and generated code should compile-with pretty much any GHC extensions or warnings you enable (or disable).-Please report this not being the case as a bug on-https://issues.apache.org/jira/secure/CreateIssue!default.jspa--Chances you'll need to muck a bit with Cabal flags to install Thrift:--CABAL_CONFIGURE_FLAGS="--user" ./configure--Base Types-==========--The mapping from Thrift types to Haskell's is:-- * double -> Double- * byte -> Data.Word.Word8- * i16 -> Data.Int.Int16- * i32 -> Data.Int.Int32- * i64 -> Data.Int.Int64- * string -> String- * binary -> Data.ByteString.Lazy- * bool -> Boolean--Enums-=====--Become Haskell 'data' types. Use fromEnum to get out the int value.--Structs-=======--Become records. Field labels are ugly, of the form f_STRUCTNAME_FIELDNAME. All-fields are Maybe types.--Exceptions-==========--Identical to structs. Throw them with throwDyn. Catch them with catchDyn.--Client-======--Just a bunch of functions. You may have to import a bunch of client files to-deal with inheritance.--Interface-=========--You should only have to import the last one in the chain of inheritors. To make-an interface, declare a label:-- data MyIface = MyIface--and then declare it an instance of each iface class, starting with the superest-class and proceding down (all the while defining the methods). Then pass your-label to process as the handler.--Processor-=========--Just a function that takes a handler label, protocols. It calls the-superclasses process if there is a superclass.-
− TODO
@@ -1,2 +0,0 @@-The library could stand to be built up more.-Many modules need export lists.
Thrift.cabal view
@@ -18,7 +18,7 @@ -- Name: Thrift-Version: 0.6.0+Version: 0.6.0.1 Cabal-Version: >= 1.4 License: OtherLicense Category: Foreign
src/Thrift/Transport/Handle.hs view
@@ -1,8 +1,10 @@-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE KindSignatures #-}-{-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE CPP #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE KindSignatures #-}+{-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeSynonymInstances #-} {-# OPTIONS_GHC -fno-warn-orphans #-}+ -- -- Licensed to the Apache Software Foundation (ASF) under one -- or more contributor license agreements. See the NOTICE file@@ -27,18 +29,23 @@ , HandleSource(..) ) where -import Control.Exception ( throw )-import Control.Monad ()+#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ >= 706+import Control.Exception (catch, throw)+#else+import Control.Exception (throw)+#endif -import Network+import Control.Monad () -import System.IO-import System.IO.Error ( isEOFError )+import Network -import Thrift.Transport+import System.IO+import System.IO.Error (isEOFError) +import Thrift.Transport+ import qualified Data.ByteString.Lazy as LBS-import Data.Monoid+import Data.Monoid instance Transport Handle where tIsOpen = hIsOpen