Comments (4)
@rhornung67 yes, that is a case I was thinking about.
I don't know the exact order of the steps, we may not use NULLs, but that type of case is one where if folks are careful it makes sense for this to be allowed.
Error checking for null in verify and in other places is something we should add.
from conduit.
@BradWhitlock sorry this caused you frustration.
I don't recommend it, but I think there are folks that will want to use NULL w/ set external.
I agree that blueprint verify should flag invalid if pointers are NULL, and that the to_string methods (json / yaml) should error instead of crashing if they encounter null pointers.
from conduit.
I can possibly see allowing NULL to act as a placeholder for data that is not created yet. Still, it makes a Blueprint tree that is not valid and cannot be used with relay, partitioning, or other algorithms that do not expect to get NULL data in field values. It's easier just to not allow in the first place.
from conduit.
@cyrush don't we do this sort of thing (set up a BP tree with null external data ptrs) in Sidre when we read in a restart dump for a Fortran code, for example? IIRC, the BP tree is defined first, then Fortran app allocates the data arrays, then Conduit reads the data into those arrays from an HDF5 file.
@BradWhitlock maybe still allow this process, but don't allow using relay, etc. on an invalid BP tree?
from conduit.
Related Issues (20)
- conduit::blueprint::mesh::topology::unstructured::verify passes on polygonal mesh with no sizes.
- Add VTK File outputs for Blueprint HOT 1
- The simple multi-buffer material set example in the docs is ambiguous
- building docs are missing details about a few cmake params HOT 1
- Use O2M index for matset converters
- O2M and ND Relation Map Interface for Python
- add species I/O support for Silo meshes HOT 1
- Refactor Generate Sides code to take advantage of `data_accessor` set
- Strided structure topo crashes topology::length function. HOT 1
- Add Gyre as example dataset
- python cmake logic needs to be udpated b/c distutils will fully disappear HOT 1
- generate_sides needs w/ fields output needs to be robust to no fields input
- Merging a partitioned ascent blueprint extract to single partition HOT 4
- is conduit robust to drive letters like `E:/blah` on windows?
- Tests should blow away old result files to avoid errors
- distutils is removed in Python 3.12 HOT 3
- `generate_sides` for matsets
- Mesh blueprint element windings polyhedral topologies HOT 2
- error building with numpy 2.0
- remove use of MPI_COMM_WORLD HOT 1
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 conduit.