-
Notifications
You must be signed in to change notification settings - Fork 69
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #52 from Microsoft/richcala/MRO-3.4.3
Updated files for MRO 3.4.3
- Loading branch information
Showing
594 changed files
with
67,558 additions
and
475 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
Package: R6 | ||
Title: Classes with Reference Semantics | ||
Version: 2.2.2 | ||
Authors@R: person("Winston", "Chang", role = c("aut", "cre"), email = "winston@stdout.org") | ||
Description: The R6 package allows the creation of classes with reference | ||
semantics, similar to R's built-in reference classes. Compared to reference | ||
classes, R6 classes are simpler and lighter-weight, and they are not built | ||
on S4 classes so they do not require the methods package. These classes | ||
allow public and private members, and they support inheritance, even when | ||
the classes are defined in different packages. | ||
Depends: R (>= 3.0) | ||
Suggests: knitr, microbenchmark, pryr, testthat, ggplot2, scales | ||
License: MIT + file LICENSE | ||
URL: https://github.com/wch/R6/ | ||
LazyData: true | ||
VignetteBuilder: knitr | ||
RoxygenNote: 6.0.1 | ||
NeedsCompilation: no | ||
Packaged: 2017-06-12 18:48:43 UTC; winston | ||
Author: Winston Chang [aut, cre] | ||
Maintainer: Winston Chang <winston@stdout.org> | ||
Repository: CRAN | ||
Date/Publication: 2017-06-17 08:22:59 UTC |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
YEAR: 2015 | ||
COPYRIGHT HOLDER: RStudio |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
6a5e9c3f464edefb255d4cbc57d50a27 *DESCRIPTION | ||
2491c4039e00be047cce99c452d3fd00 *LICENSE | ||
2290c691ec0011ac745e45d5874fa193 *NAMESPACE | ||
3d2909fe67126a810ca47074ddb24d9b *NEWS.md | ||
890797fed39cbc35799c315d9c322108 *R/aaa.R | ||
8fc2b68dd2ba714c478255c42d60fdb5 *R/aslist.R | ||
188fa603ac979a45f72960511ea940d4 *R/clone.R | ||
969da6f631df9a1f7fbdf9531f60b4dc *R/env_utils.R | ||
2a86561da7babbb64df97905bb58d43c *R/generator_funs.R | ||
da8d32330b60debc59dc9ce8a31e877c *R/is.R | ||
130ff95a05f3625003e43bb2b81d97e5 *R/new.R | ||
50c3ecec7dbae8eb9a51571a6120dba7 *R/print.R | ||
a2b3e845a08ba77dd1c35e47a5b51705 *R/r6_class.R | ||
b88a321a00815f8fbf23a3eac1790f5d *R/utils.R | ||
d8074cd312c50a432b1632838b86e005 *README.md | ||
59c6e9808263295d357d5ecb5039539c *build/vignette.rds | ||
b5cae09ea49d219b8f76b7c877a2acc3 *inst/doc/Debugging.R | ||
19292e64765adb13605c5c08a1b0fbeb *inst/doc/Debugging.Rmd | ||
3b045777c5b7e3a1363cb33e2acffd21 *inst/doc/Debugging.html | ||
458c5c4ffc9d2e3edbd3fe53bab698db *inst/doc/Introduction.R | ||
53a296d3faa1f359f85722423237fcb9 *inst/doc/Introduction.Rmd | ||
38f76fc5d85eb07062aa72b717e81bee *inst/doc/Introduction.html | ||
a1a6084d866ec4e63fd1fca514a19b06 *inst/doc/Performance.R | ||
1b808007d78f30136622d198ebbd65f4 *inst/doc/Performance.Rmd | ||
f589fc216a0d57825f15b981aa674f0d *inst/doc/Performance.html | ||
7c74c2ced879ad6b28eed3a986ecf561 *inst/doc/Portable.R | ||
2cc84e9c04c954138914110a29cc5625 *inst/doc/Portable.Rmd | ||
e70fb3278d0b77efbcdd6475904654fc *inst/doc/Portable.html | ||
1c72c34021aff0749a7d1119277acc17 *man/R6Class.Rd | ||
1ab85a3b47a7e9757b9e11fe9ab73441 *man/as.list.R6.Rd | ||
ba0b7a8329fd8be2251946b54e1119f5 *man/is.R6.Rd | ||
792c2b5c02379e27e3eccbee832b2b28 *tests/manual/README | ||
a6eb9df5a1cef6cf0b94c958ec25a7a3 *tests/manual/encapsulation.R | ||
cbaba26cf0c3e5a9004f9a03123028fa *tests/manual/test-inheritance.R | ||
08d4cdb1a57dc1e4307c6f4c8d83e65e *tests/testthat.R | ||
45a99007ec8c0255886a2100904c2cae *tests/testthat/helper.R | ||
e372420967eb6f34ea98aa72d2013d76 *tests/testthat/test-clone.R | ||
1f3112069189a7541b2286556a65ce5b *tests/testthat/test-finalizer.R | ||
890765388a44c68277dcb82c4dbb2141 *tests/testthat/test-nonportable-inheritance.R | ||
3d9cfcb12b51886fbb0ccb2e81399d8b *tests/testthat/test-nonportable.R | ||
fdaf01455a512a34e11acd1e4f939708 *tests/testthat/test-portable-inheritance.R | ||
44f73a7b77858cc4dc7e2f9f13ad041f *tests/testthat/test-portable.R | ||
02410e6c12799186c1c1d05a1055fcbc *tests/testthat/test-s3-methods.R | ||
1ff34f14a8bff32c201e41174c535ed9 *tests/testthat/test-set.R | ||
19292e64765adb13605c5c08a1b0fbeb *vignettes/Debugging.Rmd | ||
53a296d3faa1f359f85722423237fcb9 *vignettes/Introduction.Rmd | ||
1b808007d78f30136622d198ebbd65f4 *vignettes/Performance.Rmd | ||
2cc84e9c04c954138914110a29cc5625 *vignettes/Portable.Rmd | ||
c252987682010c83d511941ea3e447fb *vignettes/mystyle.css |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
# Generated by roxygen2: do not edit by hand | ||
|
||
S3method(as.list,R6) | ||
S3method(format,R6) | ||
S3method(format,R6ClassGenerator) | ||
S3method(plot,R6) | ||
S3method(print,R6) | ||
S3method(print,R6ClassGenerator) | ||
export(R6Class) | ||
export(is.R6) | ||
export(is.R6Class) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,101 @@ | ||
R6 2.2.2 | ||
======== | ||
|
||
* Fixed [#108](https://github.com/wch/R6/issues/108): When an object with a `super` object and an active binding in the `super` object was cloned, the new object's `super` object did not get the active binding -- it was a normal function. | ||
|
||
* Fixed [#119](https://github.com/wch/R6/issues/119): When a class had two levels of inheritance, an instance of that class's `super` object could contain methods that had an incorrect enclosing environment. | ||
|
||
|
||
R6 2.2.1 | ||
======== | ||
|
||
* Vignettes now only try use the microbenchmark package if it is present. This is so that the package builds properly on platforms where microbenchmark is not present, like Solaris. | ||
|
||
* Fixed ending position for `trim()`. | ||
|
||
R6 2.2.0 | ||
======== | ||
|
||
* Classes can define finalizers explicitly, by defining a public `finalize` method. ([#92](https://github.com/wch/R6/issues/92), [#93](https://github.com/wch/R6/pull/93)) | ||
|
||
* Added function `is.R6()` and `is.R6Class()`. ([#95](https://github.com/wch/R6/pull/95)) | ||
|
||
* Fixed [#96](https://github.com/wch/R6/issues/96): R6 now avoids using `$` and `[[` after the class has been assigned to the object. This allows the user to provide their own methods for `$` and `[[` without causing problems to R6's operation. | ||
|
||
R6 2.1.3 | ||
======== | ||
|
||
* The `plot` S3 method for R6 objects will call `$plot` on the object if present. (#77) | ||
|
||
* Fixed printing of members that are R6 objects. (#88) | ||
|
||
* Fixed deep cloning for non-portable classes. (#85) | ||
|
||
* Added `as.list.R6` method. (#91) | ||
|
||
R6 2.1.2 | ||
======== | ||
|
||
* Implemented `format.R6()` and `format.R6ClassGenerator`, the former calls a public `format` method if defined. This might change the functionality of existing classes that define a public `format` method intended for other purposes (#73. Thanks to Kirill Müller) | ||
|
||
* Functions are shown with their interface in `print` and `format`, limited to one line (#76. Thanks to Kirill Müller) | ||
|
||
* R6 objects and generators print out which class they inherit from. (#67) | ||
|
||
R6 2.1.1 | ||
======== | ||
|
||
* Fixed a bug with printing R6 objects when a `[[` method is defined for the class. (#70) | ||
|
||
* Fixed cloning of objects that call a `super` method which accesses `private`. (#72) | ||
|
||
R6 2.1.0 | ||
======== | ||
|
||
* Added support for making clones of R6 objects with a `clone()` method on R6 objects. The `deep=TRUE` option allows for making clones that have copies of fields with reference semantics (like other R6 objects). (#27) | ||
|
||
* Allow adding public or private members when there were no public or private members to begin with. (#51) | ||
|
||
* Previously, when an R6 object was printed, it accessed (and called) active bindings. Now it simply reports that a field is an active binding. (#37, #38. Thanks to Oscar de Lama) | ||
|
||
* Printing private members now works correctly for portable R6 objects. (#26) | ||
|
||
* The 'lock' argument has been renamed to 'lock_objects'. Also, there is a new argument, 'lock_class', which can prevent changes to the class. (#52) | ||
|
||
* Fixed printing of NULL fields. | ||
|
||
R6 2.0.1 | ||
======== | ||
|
||
* A superclass is validated on object instantation, not on class creation. | ||
|
||
* Added `debug` and `undebug` methods to generator object. | ||
|
||
R6 2.0 | ||
======== | ||
|
||
* [BREAKING CHANGE] Added `portable` option, which allows inheritance across different package namespaces, and made it the default. | ||
|
||
* Added `set()` method on class generator object, so new fields and methods can be added after the generator has been created. | ||
|
||
* All of the functions involved in instantiating objects are encapsulated in an environment separate from the R6 namespace. This means that if a generator is created with one version of R6, saved, then restored in a new R session that has a different version of R6, there shouldn't be any problems with compatibility. | ||
|
||
* Methods are locked so that they can't be changed. (Fixes #19) | ||
|
||
* Inheritance of superclasses is dynamic; instead of reading in the superclass when a class is created, this happens each time an object is instantiated. (Fixes #12) | ||
|
||
* Added trailing newline when printing R6 objects. (Thanks to Gabor Csardi) | ||
|
||
* The `print` method of R6 objects can be redefined. (Thanks to Gabor Csardi) | ||
|
||
R6 1.0.1 | ||
======== | ||
|
||
* First release on CRAN. | ||
|
||
* Removed pryr from suggested packages. | ||
|
||
R6 1.0 | ||
======== | ||
|
||
* First release |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
# This is the enclosing environment for all of the functions involved in | ||
# instantiating objects. It is also the binding environment for all these | ||
# functions, except for R6Class(). This is because a generator object can be | ||
# saved (in a built package, for example) and then restored in a different R | ||
# session which has a different version of the R6 package. With the capsule | ||
# environment, the generator object doesn't need to use any functions or objects | ||
# from the potentially different R6 namespace, and because the saved/restored | ||
# object also saves and restores the capsule environment (but not the R6 | ||
# namespace). | ||
capsule <- new.env(hash = FALSE) | ||
attr(capsule, "name") <- "R6_capsule" | ||
|
||
# This function takes an expression and evaluates it in the capsule environment. | ||
encapsulate <- function(expr) { | ||
expr <- substitute(expr) | ||
eval(expr, capsule) | ||
} | ||
|
||
|
||
# This list contains functions that are copied to the generator environment and | ||
# are assigned as the generator env as their enclosing environment. | ||
# This is simpler than encapsulate, because these functions don't need to be | ||
# enclosed in a special environment now; when a class is created, they will be | ||
# copied into the generator environment and assigned it as their enclosing env. | ||
generator_funs <- list() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
#' Create a list from an R6 object | ||
#' | ||
#' This returns a list of public members from the object. It simply calls | ||
#' \code{as.list.environment}. | ||
#' | ||
#' @param x An R6 object. | ||
#' @param ... Other arguments, which will be ignored. | ||
#' | ||
#' @export | ||
as.list.R6 <- function(x, ...) { | ||
as.list.environment(x, all.names = TRUE) | ||
} |
Oops, something went wrong.