mirror of
https://github.com/GraphiteEditor/Graphite.git
synced 2026-09-15 22:28:10 +08:00
Rename serve_edge to serve_input
This commit is contained in:
@@ -631,7 +631,7 @@ mod tests {
|
||||
|
||||
use crate::arena::Arena;
|
||||
use crate::context::ExtractArena;
|
||||
use crate::record::{LiftedSource, serve_edge};
|
||||
use crate::record::{LiftedSource, serve_input};
|
||||
|
||||
#[derive(Clone, Copy)]
|
||||
struct TestInput<'a> {
|
||||
@@ -676,7 +676,7 @@ mod tests {
|
||||
let layout = Node::<TestInput>::layout(&node).clone();
|
||||
let erased: Box<dyn Node<TestInput>> = Box::new(node);
|
||||
let frames = crate::record::test_frames(1 << 12);
|
||||
let GPoll::Final(value) = serve_edge(&*erased, &input, &frames) else {
|
||||
let GPoll::Final(value) = serve_input(&*erased, &input, &frames) else {
|
||||
panic!("the erased edge must serve a final record");
|
||||
};
|
||||
// SAFETY: the record was served at `layout`, whose element is the output.
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
use super::access::{Rec, RecordValue, read_element};
|
||||
use super::frames::Frames;
|
||||
use super::layout::Layout;
|
||||
use super::serve::{FrameClaim, Served, serve_edge};
|
||||
use super::serve::{FrameClaim, Served, serve_input};
|
||||
use crate::gpoll::GPoll;
|
||||
use crate::node::Node;
|
||||
|
||||
@@ -513,6 +513,6 @@ impl<El: Clone + 'static, N> RecordExtract<El, N> {
|
||||
// The element copies out by value, so the edge's claim dies with
|
||||
// the scope.
|
||||
let scope = frames.scope();
|
||||
serve_edge(&self.edge, input, &scope).map(|value| unsafe { read_element::<El>(self.layout.rec(&value)) })
|
||||
serve_input(&self.edge, input, &scope).map(|value| unsafe { read_element::<El>(self.layout.rec(&value)) })
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,5 +32,5 @@ pub use owned::{OwnedRecord, deepen_field_value, register_deep_element_clone, re
|
||||
pub use promote::{Promotion, assert_promoted, register_element_promote, register_field_promote, register_retained_heap};
|
||||
pub use route::{RecordSource, SourcePlan};
|
||||
pub use run::{Group, GroupItem, RunBuilder, RunColumn, RunView};
|
||||
pub use serve::{FrameClaim, MaterializedSpan, Served, SlotRun, serve_edge};
|
||||
pub use serve::{FrameClaim, MaterializedSpan, Served, SlotRun, serve_input};
|
||||
pub use testkit::{LiftedSource, ServedRecord, capture, test_frames};
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
use super::access::{Rec, apply_plan};
|
||||
use super::frames::Frames;
|
||||
use super::layout::{Layout, copy_plan};
|
||||
use super::serve::{FrameClaim, Served, serve_edge};
|
||||
use super::serve::{FrameClaim, Served, serve_input};
|
||||
use crate::attribute;
|
||||
use crate::gpoll::GPoll;
|
||||
use crate::node::Node;
|
||||
@@ -97,7 +97,7 @@ where
|
||||
let Some(plan) = &self.plan else {
|
||||
return self.edge.serve(input, slot);
|
||||
};
|
||||
match serve_edge(&self.edge, input, &mut slot.frames().reborrow()) {
|
||||
match serve_input(&self.edge, input, &mut slot.frames().reborrow()) {
|
||||
GPoll::Final(value) => {
|
||||
// SAFETY: the value came from this edge, so it carries the
|
||||
// plan's source layout.
|
||||
|
||||
@@ -280,7 +280,7 @@ impl<'e> Served<'e> {
|
||||
/// Claims `node`'s own frame from `frames` and serves through it: the
|
||||
/// caller-side half of [`Node::serve`], for drivers that want the record
|
||||
/// rather than the proof.
|
||||
pub fn serve_edge<'e, C, N>(node: &N, input: &C, frames: &Frames<'e>) -> GPoll<RecordValue<'e>>
|
||||
pub fn serve_input<'e, C, N>(node: &N, input: &C, frames: &Frames<'e>) -> GPoll<RecordValue<'e>>
|
||||
where
|
||||
N: Node<C> + ?Sized,
|
||||
C: crate::context::ExtractArena<ArenaRef = &'e crate::arena::Arena>,
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
use super::frames::{FrameArena, Frames};
|
||||
use super::layout::{Layout, element_write};
|
||||
use super::owned::OwnedRecord;
|
||||
use super::serve::{FrameClaim, Served, serve_edge};
|
||||
use super::serve::{FrameClaim, Served, serve_input};
|
||||
use crate::gpoll::GPoll;
|
||||
use crate::node::Node;
|
||||
|
||||
@@ -81,7 +81,7 @@ where
|
||||
{
|
||||
let scope = frames.scope();
|
||||
let layout = node.layout().clone();
|
||||
serve_edge(node, ctx, &scope).map(|value| ServedRecord {
|
||||
serve_input(node, ctx, &scope).map(|value| ServedRecord {
|
||||
// SAFETY: the poll served `value` at the node's declared layout and
|
||||
// nothing has claimed frames since.
|
||||
record: unsafe { OwnedRecord::copy_out(&layout, layout.rec(&value)) },
|
||||
|
||||
@@ -326,7 +326,7 @@ mod tests {
|
||||
use std::sync::Arc;
|
||||
use std::sync::atomic::{AtomicU32, Ordering};
|
||||
|
||||
use crate::record::{FrameClaim, Layout, LiftedSource, Served, element_write, read_element, serve_edge};
|
||||
use crate::record::{FrameClaim, Layout, LiftedSource, Served, element_write, read_element, serve_input};
|
||||
|
||||
fn counting() -> LiftedSource<u32, impl for<'c> Fn(&ContextImpl<'c>) -> GPoll<u32>> {
|
||||
let count = AtomicU32::new(0);
|
||||
@@ -383,7 +383,7 @@ mod tests {
|
||||
assert_eq!(*handle.ty(), concrete!(String));
|
||||
|
||||
let wired = handle.downcast_erased::<ErasedRecordNode>(concrete!(String)).unwrap();
|
||||
let GPoll::Final(value) = serve_edge(&wired, &ctx, &frames) else {
|
||||
let GPoll::Final(value) = serve_input(&wired, &ctx, &frames) else {
|
||||
panic!("borrow-carrying output must serve through the erased edge");
|
||||
};
|
||||
// SAFETY: the record was served at `layout`, whose element is the borrow.
|
||||
@@ -466,7 +466,7 @@ mod tests {
|
||||
let erased: Box<ErasedRecordNode> = Box::new(nested);
|
||||
let frames = crate::record::test_frames(1 << 12);
|
||||
|
||||
let GPoll::Final(value) = serve_edge(&*erased, &ctx, &frames) else {
|
||||
let GPoll::Final(value) = serve_input(&*erased, &ctx, &frames) else {
|
||||
panic!("nested repeat must evaluate");
|
||||
};
|
||||
// SAFETY: the record was served at `layout`, whose element is the output.
|
||||
@@ -545,7 +545,7 @@ mod tests {
|
||||
let graph = ShiftFootprintNode::new(shifted, shifted_layout);
|
||||
let layout = Node::<ContextImpl>::layout(&graph).clone();
|
||||
|
||||
let GPoll::Final(value) = serve_edge(&graph, &ctx, &frames) else {
|
||||
let GPoll::Final(value) = serve_input(&graph, &ctx, &frames) else {
|
||||
panic!("the footprint shift must reach the content");
|
||||
};
|
||||
// SAFETY: the record was served at `layout`, whose element is the resolution.
|
||||
@@ -599,10 +599,10 @@ mod tests {
|
||||
let second = duplicate.downcast_record::<u32>().unwrap();
|
||||
// SAFETY: each record was served at `layout`, whose element is the count.
|
||||
let count = |value| unsafe { layout.rec(&value).element::<u32>() };
|
||||
assert_eq!(serve_edge(&first, &ctx, &frames).map(count), GPoll::Final(1));
|
||||
assert_eq!(serve_edge(&second, &ctx, &frames).map(count), GPoll::Final(2));
|
||||
assert_eq!(serve_input(&first, &ctx, &frames).map(count), GPoll::Final(1));
|
||||
assert_eq!(serve_input(&second, &ctx, &frames).map(count), GPoll::Final(2));
|
||||
|
||||
drop(first);
|
||||
assert_eq!(serve_edge(&second, &ctx, &frames).map(count), GPoll::Final(3));
|
||||
assert_eq!(serve_input(&second, &ctx, &frames).map(count), GPoll::Final(3));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user