pub struct VennShapeSet { /* private fields */ }Expand description
Named set of shapes used to build Venn-style regions.
VennShapeSet is a runtime object so Lisp helpers can create it once and
then request union, intersection, selected-only, outside, or exactly regions.
Implementations§
Source§impl VennShapeSet
impl VennShapeSet
Sourcepub fn new(members: Vec<(Symbol, Arc<dyn Shape>)>) -> Self
pub fn new(members: Vec<(Symbol, Arc<dyn Shape>)>) -> Self
Create a named Venn set from shape members.
Sourcepub fn members(&self) -> &[(Symbol, Arc<dyn Shape>)]
pub fn members(&self) -> &[(Symbol, Arc<dyn Shape>)]
Return the named members in registration order.
Sourcepub fn intersection(&self) -> Arc<dyn Shape>
pub fn intersection(&self) -> Arc<dyn Shape>
Build a shape accepted by every member.
Sourcepub fn only(&self, name: &Symbol) -> Result<Arc<dyn Shape>>
pub fn only(&self, name: &Symbol) -> Result<Arc<dyn Shape>>
Build a shape accepted by one named member and rejected by the others.
Sourcepub fn outside_all(&self) -> Arc<dyn Shape>
pub fn outside_all(&self) -> Arc<dyn Shape>
Build a shape rejected by the union of all members.
Trait Implementations§
Source§impl Citizen for VennShapeSet
impl Citizen for VennShapeSet
Source§fn citizen_symbol() -> Symbol
fn citizen_symbol() -> Symbol
The citizen’s
namespace/name class symbol.Source§fn citizen_version() -> u32
fn citizen_version() -> u32
The citizen’s encoding version.
Source§fn citizen_arity() -> usize
fn citizen_arity() -> usize
Number of constructor fields (excluding the version argument).
Source§fn citizen_fields() -> &'static [&'static str]
fn citizen_fields() -> &'static [&'static str]
The citizen’s field names, in constructor order.
Source§impl Clone for VennShapeSet
impl Clone for VennShapeSet
Source§fn clone(&self) -> VennShapeSet
fn clone(&self) -> VennShapeSet
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Object for VennShapeSet
impl Object for VennShapeSet
Source§fn display(&self, _cx: &mut Cx) -> Result<String>
fn display(&self, _cx: &mut Cx) -> Result<String>
Render the object as a human-readable display string.
Source§fn header(&self) -> &ObjectHeader
fn header(&self) -> &ObjectHeader
Identity and trust header for the object; defaults to the shared
anonymous header.
Source§fn op(&self, _key: &OpKey) -> Option<&dyn Op>
fn op(&self, _key: &OpKey) -> Option<&dyn Op>
Resolve the operation registered under
key, if any.Source§impl ObjectCompat for VennShapeSet
impl ObjectCompat for VennShapeSet
Source§fn class(&self, cx: &mut Cx) -> Result<ClassRef>
fn class(&self, cx: &mut Cx) -> Result<ClassRef>
Class object this value belongs to; defaults to nil.
Source§fn as_expr(&self, cx: &mut Cx) -> Result<Expr>
fn as_expr(&self, cx: &mut Cx) -> Result<Expr>
Expression form of the object; defaults to an opaque extension node.
Source§fn as_object_encoder(&self) -> Option<&dyn ObjectEncode>
fn as_object_encoder(&self) -> Option<&dyn ObjectEncode>
Object-encoder view, if the object encodes other objects.
Source§fn as_callable(&self) -> Option<&dyn Callable>
fn as_callable(&self) -> Option<&dyn Callable>
Callable view, if the object can be invoked.
Source§fn as_read_constructor(&self) -> Option<&dyn ReadConstructor>
fn as_read_constructor(&self) -> Option<&dyn ReadConstructor>
Read-constructor view, if the object decodes data forms.
Source§fn as_number_domain(&self) -> Option<&(dyn NumberDomain + 'static)>
fn as_number_domain(&self) -> Option<&(dyn NumberDomain + 'static)>
Number-domain view, if the object is a number domain.
Source§fn as_number_value(&self) -> Option<&dyn NumberValue>
fn as_number_value(&self) -> Option<&dyn NumberValue>
Number-value view, if the object is a domain number.
Source§fn as_eval_fabric(&self) -> Option<&dyn EvalFabric>
fn as_eval_fabric(&self) -> Option<&dyn EvalFabric>
Eval-fabric view, if the object is a distributed eval surface.
Source§fn as_sequence(&self) -> Option<&dyn Sequence>
fn as_sequence(&self) -> Option<&dyn Sequence>
Sequence view, if the object is a sequence.
Source§fn as_list(&self) -> Option<&(dyn ListValue + 'static)>
fn as_list(&self) -> Option<&(dyn ListValue + 'static)>
List view, if the object is a list value.
Source§fn as_table_impl(&self) -> Option<&(dyn Table + 'static)>
fn as_table_impl(&self) -> Option<&(dyn Table + 'static)>
Table-implementation view, if the object is a table.
Source§fn as_dir(&self) -> Option<&(dyn Dir + 'static)>
fn as_dir(&self) -> Option<&(dyn Dir + 'static)>
Directory view, if the object is a directory.
Source§fn truth(&self, _cx: &mut Cx) -> Result<bool, Error>
fn truth(&self, _cx: &mut Cx) -> Result<bool, Error>
Truthiness of the object; defaults to true.
Source§impl ObjectEncode for VennShapeSet
impl ObjectEncode for VennShapeSet
Source§fn object_encoding(&self, _cx: &mut Cx) -> Result<ObjectEncoding>
fn object_encoding(&self, _cx: &mut Cx) -> Result<ObjectEncoding>
Returns the
ObjectEncoding this object should be rendered as.Auto Trait Implementations§
impl !RefUnwindSafe for VennShapeSet
impl !UnwindSafe for VennShapeSet
impl Freeze for VennShapeSet
impl Send for VennShapeSet
impl Sync for VennShapeSet
impl Unpin for VennShapeSet
impl UnsafeUnpin for VennShapeSet
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more