[Rcpp-commits] r3769 - pkg/Rcpp/inst

noreply at r-forge.r-project.org noreply at r-forge.r-project.org
Sun Sep 16 15:47:11 CEST 2012


Author: edd
Date: 2012-09-16 15:47:11 +0200 (Sun, 16 Sep 2012)
New Revision: 3769

Modified:
   pkg/Rcpp/inst/NEWS
Log:
converted to .Rd


Modified: pkg/Rcpp/inst/NEWS
===================================================================
--- pkg/Rcpp/inst/NEWS	2012-09-08 19:39:00 UTC (rev 3768)
+++ pkg/Rcpp/inst/NEWS	2012-09-16 13:47:11 UTC (rev 3769)
@@ -1,1211 +1,938 @@
-0.9.14  2012-xx-yy
-
-    o   Added new Rcpp sugar functions trunc(), round() and signif(), as well
-        as unit tests for them
-
-    o   Be more conservative about where we support clang++ and the inclusion
-        of exception_defines.h and prevent this from being attempted on OS X
-        where it failed for clang 3.1
-
-    o   Corrected a typo in Module.h who now again permits use of finalizers
-
-    o   Small correction for (unexported) bib() function (which provides a path
-        to the bibtex file that ships with Rcpp)
-
-0.9.13  2012-06-28
-
-    o   Truly corrected Rcpp::Environment class by having default constructor
-        use the global environment, and removing the default argument of
-        global environment from the SEXP constructor
-
-    o   Added tests for clang++ version to include bits/exception_defines.h
-        for versions 3.0 or higher (similar to g++ 4.6.0 or later), needed to
-	include one particular exceptions header
-
-    o   Made more regression tests conditional on the RunAllRcppTests to come
-        closer to the CRAN mandate of running tests in sixty seconds
-
-    o   Updated unit test wrapper tests/doRUnit.R as well as unitTests/runTests.R
-
-0.9.12  2012-06-23
-
-    o   Corrected Rcpp::Environment class by removing (empty) ctor following
-        rev3592 (on May 2) where default argument for ctor was moved
-
-    o   Unit testing now checks for environment variable RunAllRcppTests being
-        set to "yes"; otherwise some tests are skipped. This is arguably not
-        the right thing to do, but CRAN maintainers insist on faster tests.
-
-    o   Unit test wrapper script runTests.R has new option --allTests to set
-        the environment variable
-
-    o   The cleanup script now also considers inst/unitTests/testRcppClass/src 
-
-0.9.11  2012-06-22
-
-    o   New member function for vectors (and lists etc) containsElementNamed() 
-        which returns a boolean indicating if the given element name is present
-
-    o   Updated the Rcpp.package.skeleton() support for Rcpp modules by
-        carrying functions already present from the corresponding unit test
-	which was also slightly expanded; and added more comments to the code 
-
-    o   Rcpp modules can now be loaded via loadRcppModules() from .onLoad(),
-        or via loadModule("moduleName") from any R file 
-
-    o   Extended functionality to let R modify C++ clases imported via modules
-        documented in help(setRcppClass)
-
-    o   Support compilation in Cygwin thanks to a patch by Dario Buttari
-
-    o   Extensions to the Rcpp-FAQ and the Rcpp-modules vignettes
-
-    o   The minium version of R is now 2.15.1 which is required for some of
-        the Rcpp modules support 
-
-0.9.10  2012-02-16
-
-    o   Rearrange headers so that Rcpp::Rcout can be used by RcppArmadillo et al
-
-    o   New Rcpp sugar function mapply (limited to two or three input vectors)
-
-    o   Added custom version of the Rcpp sugar diff function for numeric vectors
-        skipping unncesserry checks for NA
-
-    o   Some internal code changes to reflect changes and stricter requirements
-        in R CMD check in the current R-devel versions
-    
-    o   Corrected fixed-value initialization for IntegerVector (with thanks to
-        Gregor Kastner for spotting this)
-
-    o   New Rcpp-FAQ entry on simple way to set compiler option for cxxfunction
-
-0.9.9   2012-12-25
-
-    o   Reverting the 'int64' changes from release 0.9.8 which adversely
-    	affect packages using Rcpp: We will re-apply the 'int64' changes in a 
-	way which should cooperate more easily with 'long' and 'unsigned long'.
-
-    o   Unit test output directory fallback changed to use Rcpp.Rcheck
-
-    o   Conditioned two unit tests to not run on Windows where they now break
-        whereas they passed before, and continue to pass on other OSs
-
-0.9.8   2011-12-21
-
-    o   wrap now handles 64 bit integers (int64_t, uint64_t) and containers 
-        of them, and Rcpp now depends on the int64 package (also on CRAN).
-        This work has been sponsored by the Google Open Source Programs
-        Office.
-
-    o   Added setRcppClass() function to create extended reference classes 
-        with an interface to a C++ class (typically via Rcpp Module) which
-	can have R-based fields and methods in addition to those from the C++.
-
-    o   Applied patch by Jelmer Ypma which adds an output stream class
-    	'Rcout' not unlike std::cout, but implemented via Rprintf to
-    	cooperate with R and its output buffering.
-    	
-    o   New unit tests for pf(), pnf(), pchisq(), pnchisq() and pcauchy()
-
-    o   XPtr constructor now checks for corresponding type in SEXP
-
-    o   Updated vignettes for use with updated highlight package
-
-    o   Update linking command for older fastLm() example using external 
-        Armadillo
-
-0.9.7   2011-09-29
-
-    o   Applied two patches kindly provided by Martyn Plummer which provide
-    	support for compilation on Solaris using the SunPro compiler
-
-    o   Minor code reorganisation in which exception specifiers are removed;
-        this effectively only implements a run-time (rather than compile-time) 
-        check and is generally seen as a somewhat depreated C++ idiom. Thanks
-        to Darren Cook for alerting us to this issue.
-
-    o   New example 'OpenMPandInline.r' in the OpenMP/ directory, showing how
-        easily use OpenMP by modifying the RcppPlugin output
-
-    o   New example 'ifelseLooped.r' showing Rcpp can accelerate loops that may
-	be difficult to vectorise due to dependencies
-
-    o   New example directory examples/Misc/ regrouping the new example as
-        well as the fibonacci example added in Rcpp 0.9.6
-
-    o   New Rcpp-FAQ example warning of lossy conversion from 64-bit long
-        integer types into a 53-bit mantissa which has no clear fix yet.
-
-    o   New unit test for accessing a non-exported function from a namespace
-
-0.9.6   2011-07-26
-
-    o   Added helper traits to facilitate implementation of the RcppEigen
-	package: The is_eigen_base traits identifies if a class derives from
-	EigenBase using SFINAE; and new dispatch layer was added to wrap() to
-	help RcppEigen
-
-    o   XPtr now accepts a second template parameter, which is a function
-        taking a pointer to the target class. This allows the developper to
-        supply his/her own finalizer. The template parameter has a default
-        value which retains the original behaviour (calling delete on the
-        pointer)
-
-    o   New example RcppGibbs, extending Sanjog Misra's Rcpp illustration of
-        Darren Wilkinson's comparison of MCMC Gibbs Sampler implementations;
-	also added short timing on Normal and Gaussian RNG draws between Rcpp
-	and GSL as R's rgamma() is seen to significantly slower
-
-    o   New example on recursively computing a Fibonacci number using Rcpp and
-        comparing this to R and byte-compiled R for a significant speed gain
-
-0.9.5   2011-07-05
-
-    o   New Rcpp-FAQ examples on using the plugin maker for inline's
-        cxxfunction(), and on setting row and column names for matrices
-        
-    o   New sugar functions: mean, var, sd
-
-    o   Minor correction and extension to STL documentation in Rcpp-quickref
-
-    o   wrap() is now resilient to NULL pointers passed as in const char *
-    
-    o   loadRcppModules() gains a "direct" argument to expose the module instead
-        of exposing what is inside it
-
-    o   Suppress a spurious warning from R CMD check on packages created with
-        Rcpp.package.skeleton(..., module=TRUE)
-
-    o   Some fixes and improvements for Rcpp sugar function 'rlnorm()'
-
-    o   Beginnings of new example using OpenMP and recognising user interrupts
-
-0.9.4   2011-04-12
-
-    o   New R function "loadRcppModules" to load Rcpp modules automatically
-        from a package. This function must be called from the .onLoad function
-        and works with the "RcppModules" field of the package's DESCRIPTION file
-
-    o   The Modules example wrapped the STL std::vector received some editing
-        to disambiguate some symbols the newer compilers did not like
-
-    o   Coercing of vectors of factors is now done with an explicit callback
-        to R's "as.character()" as Rf_coerceVector no longer plays along
-
-    o   A CITATION file for the published JSS paper has been added, and 
-        references were added to Rcpp-package.Rd and the different vignettes
-
-0.9.3   2011-04-05
-
-    o   Fixed a bug in which modules code was not behaving when compiled 
-        twice as can easily happen with inline'ed version
-
-    o   Exceptions code includes exception_defines.h only when g++ is 4.5 or
-        younger as the file no longer exists with g++-4.6
-    
-    o   The documentation Makefile now uses the $R_HOME environment variable
-
-    o   The documentation Makefile no longer calls clean in the all target
-
-    o   C++ conformance issue found by clang/llvm addressed by re-ordering
-        declarations in grow.h as unqualified names must be declared before
-        they are used, even when used within templates
-
-    o   The 'long long' typedef now depends on C++0x being enabled as this
-        was not a feature in C++98; this suppresses a new g++-4.5 warning
-
-    o   The Rcpp-introduction vignette was updated to the forthcoming JSS paper
-
-0.9.2   2011-02-23
-
-    o   The unitTest runit.Module.client.package.R is now skipped on older OS
-        X releases as it triggers a bug with g++ 4.2.1 or older; OS X 10.6 is
-        fine but as it no longer support ppc we try to accomodate 10.5 too
-        Thanks to Simon Urbanek for pinning this down and Baptiste Auguie
-        and Ken Williams for additonal testing 
-
-    o   RcppCommon.h now recognises the Intel Compiler thanks to a short
-        patch by Alexey Stukalov; this turns off Cxx0x and TR1 features too
-
-    o   Three more setup questions were added to the Rcpp-FAQ vignette
-
-    o   One question about RcppArmadillo was added to the Rcpp-FAQ vignette
-
-0.9.1   2011-02-14
-
-    o   A number of internal changes to the memory allocation / protection of
-        temporary objects were made---with a heartfelt "Thank You!" to both
-        Doug Bates for very persistent debugging of Rcpp modules code, and to
-        Luke Tierney who added additional memory allocation debugging tools
-        to R-devel (which will be in R 2.13.0 and may also be in R 2.12.2)
-	
-    o   Removed another GNU Make-specific variable from src/Makevars in order
-        to make the build more portable; this was noticed on FreeBSD
-
-    o   On *BSD, do not try to compute a stack trace but provide file and
-        line number (which is the same behaviour as implemented in Windows)
-
-    o   Fixed an int conversion bug reported by Daniel Sabanes Bove on r-devel,
-        added unit test as well
-    
-    o   Added unit tests for complex-typed vectors (thanks to Christian Gunning)
-    
-    o   Expanded the Rcpp-quickref vignette (with thanks to Christian Gunning)
-
-    o   Additional examples were added to the Rcpp-FAQ vignette
-
-0.9.0   2010-12-19
-
-    o   The classic API was factored out into its own package RcppClassic which
-        is released concurrently with this version.
-
-    o   If an object is created but not initialized, attempting to use
-        it now gives a more sensible error message (by forwarding an
-        Rcpp::not_initialized exception to R).
-
-    o   SubMatrix fixed, and Matrix types now have a nested ::Sub typedef.
-  
-    o   New unexported function SHLIB() to aid in creating a shared library on
-        the command-line or in Makefile (similar to CxxFlags() / LdFlags()).
-
-    o   Module gets a seven-argument ctor thanks to a patch from Tama Ma.
-
-    o   The (still incomplete) QuickRef vignette has grown thanks to a patch
-        by Christian Gunning.
-
-    o   Added a sprintf template intended for logging and error messages.
-
-    o   Date::getYear() corrected (where addition of 1900 was not called for); 
-        corresponding change in constructor from three ints made as well.
-
-    o   Date() and Datetime() constructors from string received a missing
-        conversion to int and double following strptime. The default format
-        string for the Datetime() strptime call was also corrected.
-
-    o   A few minor fixes throughout, see ChangeLog.
-
-0.8.9   2010-11-27
-
-    o   Many improvements were made in 'Rcpp modules':
-
-        - exposing multiple constructors
-
-        - overloaded methods
-
-        - self-documentation of classes, methods, constructors, fields and 
-          functions.
-
-        - new R function "populate" to facilitate working with modules in 
-          packages. 
-
-        - formal argument specification of functions.
-
-        - updated support for Rcpp.package.skeleton.
-
-        - constructors can now take many more arguments.
-        
-    o   The 'Rcpp-modules' vignette was updated as well and describe many
-        of the new features
-
-    o   New template class Rcpp::SubMatrix<RTYPE> and support syntax in Matrix
-        to extract a submatrix: 
-        
-           NumericMatrix x = ... ;
-        
-           // extract the first three columns
-           SubMatrix<REALSXP> y = x( _ , Range(0,2) ) ; 
-        
-           // extract the first three rows
-           SubMatrix<REALSXP> y = x( Range(0,2), _ ) ; 
-        
-           // extract the top 3x3 sub matrix
-           SubMatrix<REALSXP> y = x( Range(0,2), Range(0,2) ) ; 
-
-    o   Reference Classes no longer require a default constructor for
-        subclasses of C++ classes    
-
-    o   Consistently revert to using backticks rather than shell expansion
-        to compute library file location when building packages against Rcpp
-	on the default platforms; this has been applied to internal test
-        packages as well as CRAN/BioC packages using Rcpp
-
-0.8.8   2010-11-01
-
-    o   New syntactic shortcut to extract rows and columns of a Matrix. 
-        x(i,_) extracts the i-th row and x(_,i) extracts the i-th column. 
-    
-    o   Matrix indexing is more efficient. However, faster indexing is
-        disabled if g++ 4.5.0 or later is used.
-
-    o   A few new Rcpp operators such as cumsum, operator=(sugar)
-
-    o   Variety of bug fixes:
-
-        - column indexing was incorrect in some cases
-
-        - compilation using clang/llvm (thanks to Karl Millar for the patch)
-
-	- instantation order of Module corrected
-
-        - POSIXct, POSIXt now correctly ordered for R 2.12.0 
-
-0.8.7   2010-10-15
-
-    o   As of this version, Rcpp depends on R 2.12 or greater as it interfaces
-        the new reference classes (see below) and also reflects the POSIXt
-        class reordering both of which appeared with R version 2.12.0
-
-    o   new Rcpp::Reference class, that allows internal manipulation of R
-        2.12.0 reference classes. The class exposes a constructor that takes
-        the name of the target reference class and a field(string) method
-        that implements the proxy pattern to get/set reference fields using
-        callbacks to the R operators "$" and "$<-" in order to preserve the
-        R-level encapsulation
-
-    o   the R side of the preceding item allows methods to be written in R as
-        per ?ReferenceClasses, accessing fields by name and assigning them
-        using "<<-".  Classes extracted from modules are R reference classes.
-        They can be subclassed in R, and/or R methods can be defined using
-        the $methods(...) mechanism.
-
-    o   internal performance improvements for Rcpp sugar as well as an added
-        'noNA()' wrapper to omit tests for NA values -- see the included
-        examples in inst/examples/convolveBenchmarks for the speedups
-
-    o   more internal performance gains with Functions and Environments
-
-0.8.6   2010-09-09
-
-    o	new macro RCPP_VERSION and Rcpp_Version to allow conditional compiling
-        based on the version of Rcpp
-    
-           #if defined(RCPP_VERSION) && RCPP_VERSION >= Rcpp_Version(0,8,6)
-           ...
-           #endif
-
-    o   new sugar functions for statistical distributions (d-p-q-r functions)
-	with distributions : unif, norm, gamma, chisq, lnorm, weibull, logis,
-	f, pois, binom, t, beta.
-
-    o   new ctor for Vector taking size and function pointer so that for example
-
-    	   NumericVector( 10, norm_rand )
-
-	generates a N(0,1) vector of size 10
-
-    o   added binary operators for complex numbers, as well as sugar support 
-
-    o   more sugar math functions: sqrt, log, log10, exp, sin, cos, ...
-
-    o	started new vignette Rcpp-quickref : quick reference guide of Rcpp API
-        (still work in progress)
-
-    o	various patches to comply with solaris/suncc stricter standards
-
-    o	minor enhancements to ConvolutionBenchmark example
-
-    o	simplified src/Makefile to no longer require GNU make; packages using
-        Rcpp still do for the compile-time test of library locations
-    
-0.8.5   2010-07-25
-
-    o   speed improvements. Vector::names, RObject::slot have been improved
-        to take advantage of R API functions instead of callbacks to R
-
-    o   Some small updates to the Rd-based documentation which now points to 
-        content in the vignettes.  Also a small formatting change to suppress
-	a warning from the development version of R.
-
-    o   Minor changes to Date() code which may reenable SunStudio builds
-
-0.8.4   2010-07-09
-
-    o   new sugar vector functions: rep, rep_len, rep_each, rev, head, tail,
-	diag
-	
-    o	sugar has been extended to matrices: The Matrix class now extends the 
-    	Matrix_Base template that implements CRTP. Currently sugar functions 
-    	for matrices are: outer, col, row, lower_tri, upper_tri, diag
-
-    o   The unit tests have been reorganised into fewer files with one call
- 	each to cxxfunction() (covering multiple tests) resulting in a
- 	significant speedup
-
-    o	The Date class now uses the same mktime() replacement that R uses
-        (based on original code from the timezone library by Arthur Olson)
-	permitting wide date ranges on all operating systems
-
-    o   The FastLM example has been updated, a new benchmark based on the
-        historical Longley data set has been added
-
-    o   RcppStringVector now uses std::vector<std::string> internally
-    
-    o	setting the .Data slot of S4 objects did not work properly
-
-0.8.3   2010-06-27
-
-    o	This release adds Rcpp sugar which brings (a subset of) the R syntax
-        into C++. This supports : 
-         - binary operators : <,>,<=,>=,==,!= between R vectors
-         - arithmetic operators: +,-,*,/ between compatible R vectors
-         - several functions that are similar to the R function of the same name:
-        abs, all, any, ceiling, diff, exp, ifelse, is_na, lapply, pmin, pmax, 
-        pow, sapply, seq_along, seq_len, sign
-        
-        Simple examples :
-        
-          // two numeric vector of the same size
-          NumericVector x ;
-          NumericVector y ;
-          NumericVector res = ifelse( x < y, x*x, -(y*y) ) ;
-        
-          // sapply'ing a C++ function
-          double square( double x ){ return x*x ; }
-          NumericVector res = sapply( x, square ) ;
-        
-        Rcpp sugar uses the technique of expression templates, pioneered by the 
-        Blitz++ library and used in many libraries (Boost::uBlas, Armadillo). 
-        Expression templates allow lazy evaluation of expressions, which 
-        coupled with inlining generates very efficient code, very closely 
-        approaching the performance of hand written loop code, and often
-        much more efficient than the equivalent (vectorized) R code.
-        
-        Rcpp sugar is curently limited to vectors, future releases will 
-        include support for matrices with sugar functions such as outer, etc ...
-        
-        Rcpp sugar is documented in the Rcpp-sugar vignette, which contains
-        implementation details.
-
-    o   New helper function so that "Rcpp?something" brings up Rcpp help
-
-    o   Rcpp Modules can now expose public data members
-
-    o   New classes Date, Datetime, DateVector and DatetimeVector with proper
-        'new' API integration such as as(), wrap(), iterators, ...
-
-    o   The so-called classic API headers have been moved to a subdirectory
-        classic/ This should not affect client-code as only Rcpp.h was ever
-        included.
-
-    o   RcppDate now has a constructor from SEXP as well
-
-    o   RcppDateVector and RcppDatetimeVector get constructors from int
-        and both const / non-const operator(int i) functions
-        
-    o   New API class Rcpp::InternalFunction that can expose C++ functions
-    	to R without modules. The function is exposed as an S4 object of 
-    	class C++Function
-   
-0.8.2   2010-06-09
-
-    o   Bug-fix release for suncc compiler with thanks to Brian Ripley for
-        additional testing.
-
-0.8.1   2010-06-08
-
-    o   This release adds Rcpp modules. An Rcpp module is a collection of
-        internal (C++) functions and classes that are exposed to R. This
-        functionality has been inspired by Boost.Python.
-        
-        Modules are created internally using the RCPP_MODULE macro and
-        retrieved in the R side with the Module function. This is a preview 
-        release of the module functionality, which will keep improving until
-        the Rcpp 0.9.0 release. 
-
-        The new vignette "Rcpp-modules" documents the current feature set of
-        Rcpp modules.
-        
-    o   The new vignette "Rcpp-package" details the steps involved in making a
-        package that uses Rcpp.
-
-    o   The new vignette "Rcpp-FAQ" collects a number of frequently asked
-        questions and answers about Rcpp.
-
-    o   The new vignette "Rcpp-extending" documents how to extend Rcpp
-        with user defined types or types from third party libraries. Based on
-        our experience with RcppArmadillo
-        
-    o   Rcpp.package.skeleton has been improved to generate a package using 
-        an Rcpp module, controlled by the "module" argument
-
-    o   Evaluating a call inside an environment did not work properly
-        
-    o   cppfunction has been withdrawn since the introduction of the more
-        flexible cxxfunction in the inline package (0.3.5). Rcpp no longer
-        depends on inline since many uses of Rcpp do not require inline at
-        all. We still use inline for unit tests but this is now handled
-        locally in the unit tests loader runTests.R. 
-
-        Users of the now-withdrawn function cppfunction can redefine it as:
-        
-           cppfunction <- function(...) cxxfunction( ..., plugin = "Rcpp" )
-
-    o   Support for std::complex was incomplete and has been enhanced.
-
-    o   The methods XPtr<T>::getTag and XPtr<T>::getProtected are deprecated, 
-        and will be removed in Rcpp 0.8.2. The methods tag() and prot() should
-        be used instead. tag() and prot() support both LHS and RHS use. 
-
-    o   END_RCPP now returns the R Nil values; new macro VOID_END_RCPP
-        replicates prior behabiour
-        
-0.8.0   2010-05-17
-
-    o   All Rcpp headers have been moved to the inst/include directory,
-        allowing use of 'LinkingTo: Rcpp'. But the Makevars and Makevars.win
-        are still needed to link against the user library.
-
-    o   Automatic exception forwarding has been withdrawn because of
-        portability issues (as it did not work on the Windows platform).
-        Exception forwarding is still possible but is now based on explicit
-        code of the form:
-    
-          try {
-            // user code
-          } catch( std::exception& __ex__){ 
-            forward_exception_to_r( __ex___ ) ;
-          }
-    
-        Alternatively, the macro BEGIN_RCPP and END_RCPP can use used to enclose
-        code so that it captures exceptions and forward them to R. 
-    
-          BEGIN_RCPP
-          // user code
-          END_RCPP
-    
-    o   new __experimental__ macros 
-    
-        The macros RCPP_FUNCTION_0, ..., RCPP_FUNCTION_65 to help creating C++
-        functions hiding some code repetition: 
-    
-          RCPP_FUNCTION_2( int, foobar, int x, int y){
-           return x + y ;
-          }
-
-        The first argument is the output type, the second argument is the
-        name of the function, and the other arguments are arguments of the
-        C++ function. Behind the scenes, the RCPP_FUNCTION_2 macro creates an
-        intermediate function compatible with the .Call interface and handles
-        exceptions
-    
-        Similarly, the macros RCPP_FUNCTION_VOID_0, ..., RCPP_FUNCTION_VOID_65 
-        can be used when the C++ function to create returns void. The generated
-        R function will return R_NilValue in this case.
-    
-          RCPP_FUNCTION_VOID_2( foobar, std::string foo ){
-           // do something with foo
-          }
-      
-        The macro RCPP_XP_FIELD_GET generates a .Call compatible function that
-        can be used to access the value of a field of a class handled by an 
-        external pointer. For example with a class like this: 
-    
-          class Foo{
-            public:
-              int bar ;
-          }
-    
-          RCPP_XP_FIELD_GET( Foo_bar_get, Foo, bar ) ;
-      
-        RCPP_XP_FIELD_GET will generate the .Call compatible function called
-        Foo_bar_get that can be used to retrieved the value of bar.
-    
-    
-        The macro RCPP_FIELD_SET generates a .Call compatible function that 
-        can be used to set the value of a field. For example:
-    
-          RCPP_XP_FIELD_SET( Foo_bar_set, Foo, bar ) ;
-    
-        generates the .Call compatible function called "Foo_bar_set" that 
-        can be used to set the value of bar
-    
-    
-        The macro RCPP_XP_FIELD generates both getter and setter. For example
-    
-          RCPP_XP_FIELD( Foo_bar, Foo, bar )
-      
-        generates the .Call compatible Foo_bar_get and Foo_bar_set using the 
-        macros RCPP_XP_FIELD_GET and RCPP_XP_FIELD_SET previously described
-    
-      
-        The macros RCPP_XP_METHOD_0, ..., RCPP_XP_METHOD_65 faciliate 
-        calling a method of an object that is stored in an external pointer. For 
-        example: 
-    
-          RCPP_XP_METHOD_0( foobar, std::vector<int> , size )
-    
-        creates the .Call compatible function called foobar that calls the
-        size method of the std::vector<int> class. This uses the Rcpp::XPtr<
-        std::vector<int> > class.
-    
-        The macros RCPP_XP_METHOD_CAST_0, ... is similar but the result of
-        the method called is first passed to another function before being
-        wrapped to a SEXP.  For example, if one wanted the result as a double
-    
-          RCPP_XP_METHOD_CAST_0( foobar, std::vector<int> , size, double )
-    
-        The macros RCPP_XP_METHOD_VOID_0, ... are used when calling the
-        method is only used for its side effect.
-    
-         RCPP_XP_METHOD_VOID_1( foobar, std::vector<int>, push_back ) 
-    
-        Assuming xp is an external pointer to a std::vector<int>, this could
-        be called like this :
-    
-          .Call( "foobar", xp, 2L )
-    
-    o   Rcpp now depends on inline (>= 0.3.4)
-    
-    o   A new R function "cppfunction" was added which invokes cfunction from
-        inline with focus on Rcpp usage (enforcing .Call, adding the Rcpp
-        namespace, set up exception forwarding). cppfunction uses BEGIN_RCPP
-        and END_RCPP macros to enclose the user code
-
-    o   new class Rcpp::Formula to help building formulae in C++
-    
-    o   new class Rcpp::DataFrame to help building data frames in C++
-    
-    o   Rcpp.package.skeleton gains an argument "example_code" and can now be
-        used with an empty list, so that only the skeleton is generated. It
-        has also been reworked to show how to use LinkingTo: Rcpp
-    
-    o   wrap now supports containers of the following types: long, long double,
-        unsigned long, short and unsigned short which are silently converted
-        to the most acceptable R type.
-    
-    o   Revert to not double-quote protecting the path on Windows as this
-        breaks backticks expansion used n Makevars.win etc
-        
-    o   Exceptions classes have been moved out of Rcpp classes,
-        e.g. Rcpp::RObject::not_a_matrix is now Rcpp::not_a_matrix
-
-0.7.12  2010-04-16
-
-    o   Undo shQuote() to protect Windows path names (which may contain
-        spaces) as backticks use is still broken; use of $(shell ...) works
-
-0.7.11  2010-03-26
-
-    o   Vector<> gains a set of templated factory methods "create" which
-        takes up to 20 arguments and can create named or unnamed vectors.
-        This greatly facilitates creating objects that are returned to R. 
-
-    o   Matrix now has a diag() method to create diagonal matrices, and
-        a new constructor using a single int to create square matrices
-
-    o   Vector now has a new fill() method to propagate a single value
-    
-    o   Named is no more a class but a templated function. Both interfaces
-        Named(.,.) and Named(.)=. are preserved, and extended to work also on
-        simple vectors (through Vector<>::create)
-    
-    o   Applied patch by Alistair Gee to make ColDatum more robust
-    
-    o   Fixed a bug in Vector that caused random behavior due to the lack of
-        copy constructor in the Vector template
-        
-0.7.10  2010-03-15
-
-    o   new class Rcpp::S4 whose constructor checks if the object is an S4
-        object
-    
-    o   maximum number of templated arguments to the pairlist function, the
-        DottedPair constructor, the Language constructor and the Pairlist
-        constructor has been updated to 20 (was 5) and a script has been
-        added to the source tree should we want to change it again
-
-    o   use shQuote() to protect Windows path names (which may contain spaces)
-
-0.7.9   2010-03-12
-
-    o   Another small improvement to Windows build flags
-
-    o   bugfix on 64 bit platforms. The traits classes (wrap_type_traits, etc)
-        used size_t when they needed to actually use unsigned int
-
-    o   fixed pre gcc 4.3 compatibility. The trait class that was used to
-        identify if a type is convertible to another had too many false
-        positives on pre gcc 4.3 (no tr1 or c++0x features). fixed by
-        implementing the section 2.7 of "Modern C++ Design" book.
-
-0.7.8   2010-03-09
-
-    o   All vector classes are now generated from the same template class
-        Rcpp::Vector<int RTYPE> where RTYPE is one of LGLSXP, RAWSXP, STRSXP,
-        INTSXP, REALSXP, CPLXSXP, VECSXP and EXPRSXP. typedef are still 
-        available : IntegerVector, ... All vector classes gain methods 
-        inspired from the std::vector template : push_back, push_front, 
-        erase, insert
-        
-    o   New template class Rcpp::Matrix<RTYPE> deriving from 
-        Rcpp::Vector<RTYPE>. These classes have the same functionality
-        as Vector but have a different set of constructors which checks
-        that the input SEXP is a matrix. Matrix<> however does/can not
-        guarantee that the object will allways be a matrix. typedef 
-        are defined for convenience: Matrix<INTSXP> is IntegerMatrix, etc...
-        
-    o   New class Rcpp::Row<int RTYPE> that represents a row of a matrix
-        of the same type. Row contains a reference to the underlying 
-        Vector and exposes a nested iterator type that allows use of 
-        STL algorithms on each element of a matrix row. The Vector class
-        gains a row(int) method that returns a Row instance. Usage 
-        examples are available in the runit.Row.R unit test file
-        
-    o   New class Rcpp::Column<int RTYPE> that represents a column of a 
-        matrix. (similar to Rcpp::Row<int RTYPE>). Usage examples are 
-        available in the runit.Column.R unit test file
-
-    o   The Rcpp::as template function has been reworked to be more 
-        generic. It now handles more STL containers, such as deque and 
-        list, and the genericity can be used to implement as for more
-        types. The package RcppArmadillo has examples of this
-
-    o   new template class Rcpp::fixed_call that can be used in STL algorithms
-        such as std::generate.
-
-    o   RcppExample et al have been moved to a new package RcppExamples;
-        src/Makevars and src/Makevars.win simplified accordingly
-
-    o   New class Rcpp::StringTransformer and helper function 
-        Rcpp::make_string_transformer that can be used to create a function
-        that transforms a string character by character. For example
-        Rcpp::make_string_transformer(tolower) transforms each character
-        using tolower. The RcppExamples package has an example of this.
-        
[TRUNCATED]

To get the complete diff run:
    svnlook diff /svnroot/rcpp -r 3769


More information about the Rcpp-commits mailing list