Comments (4)
We might trigger the fallback if we encounter a corrupted object too. for instance a function with class "data.frame"
would at the moment be reconstructed with construct_idiomatic.data.frame()
and this will fail.
If we have a is_corrupted_*()
function family, every method can start with if(is_corrupted_*(x)) NextMethod()
. We can also make these checks optional.
from constructive.
After #65 it might be as simple as :
if (constructor == "next") NextMethod()
from constructive.
I think all objects of class list should have a list()
constructor, that's we'll fall back to it if the object is corrupted and a list.
More generally :
- we check if an object is corrupted
- if it is we fall back on another constructor, by default an atomic constructor (simplest constructor for the atomic type, with adequate attribute reparation)
- list() will be used for data frames etc,
c()
for atomic vectors,function
for functions etc
In the example of a function with a data frame class, we will find that the data frame is corrupted, and fall back to the function constructor.
Right now we cannot do this because we run construct_idiomatic then repair_attributes, so we'd run the wrong repair_attributes.
To be done after we unite onstruct_idiomatic and repair_attributes
from constructive.
done with #172
from constructive.
Related Issues (20)
- Release constructive 0.2.0 HOT 4
- `.env()` forces crash of RStudio HOT 5
- "readRDS" constructor for environments ? HOT 1
- setup_reprex() HOT 3
- diff() warning when simplifying integer vector wit big differences
- `construct_multi()` should support promises
- Harmonize constructors HOT 1
- Think about package ecosystem
- Improve extension system HOT 2
- roxygen2 import? HOT 2
- Changes in ggplot2 HOT 2
- S4 construction should not use representation()
- Bug when exploring S4
- opts_formula() needs a "next" constructor
- data pronouns are not handled properly
- `deparse_call()` and options HOT 1
- Dependency Dashboard
- can't construct classed pointers
- more ggplot2 issues
- Release constructive 0.3.0
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from constructive.