Comments (2)
Started implementing this and ran into the fact that the evaluator still needs to be able to evaluate unspecified entities, which means Value
needs to be able to express unspecified entities. I think we should add a case to Literal
, or even better, change the Literal::EntityUID
case to Literal::Entity
with an enum specified/unspecified (so that existing code matching on Literal::EntityUID
and assuming that covers all possible entity cases doesn't break). This is of course a little bit of a stretch as unspecified entities are not allowed as literals, but unspecified entity currently lives in the ValueKind::Literal
arm of Value
, so it's not making the situation worse than it already is. Nonetheless, the complication of adding a case to Literal
might negate the benefit of removing a case from EntityType
.
from cedar.
Superseded by #919
from cedar.
Related Issues (20)
- Reserve `Set`, `Record`, `Entity`, `Extension` in schemas
- Additional APIs for manipulating schemas HOT 1
- Carry source info through schema structures HOT 1
- Generate schema warnings later in the process
- Allow reopening a namespace in human-syntax schemas HOT 1
- Improve parse errors on parenthized "special" expressions
- Improve error message when forgetting `name` field of `Entity` or `EntityOrCommon` in schema JSON syntax
- Clarify `Template` vs. `Policy`
- `unknown` extension function is allowed without enabling `partial-evaluation` feature
- Implement RFC 68: Entity Attribute Maps
- Implement RFC 70: Disallow shadowing definitions in the empty namespace HOT 1
- Make `Policy` and `Template` APIs consistent wrt annotations
- Some authorization errors do not have source locations attached
- Lossless schema fragments aren't lossless
- Add API to list entity literals in a policy
- API to substitute all occurences of an expr with another expr
- Add help messages for errors related to the Cedar schemas
- Various Schema APIs
- More restrictions on type shadowing / collisions HOT 2
- Performance regression testing
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 cedar.