SketchApi

Trait SketchApi 

Source
pub trait SketchApi {
    // Required methods
    async fn new_sketch(
        &self,
        project: ProjectId,
        file: FileId,
        version: Version,
        args: SketchArgs,
    ) -> Result<(SourceDelta, SceneGraphDelta, ObjectId)>;
    async fn edit_sketch(
        &self,
        project: ProjectId,
        file: FileId,
        version: Version,
        sketch: ObjectId,
    ) -> Result<SceneGraphDelta>;
    async fn exit_sketch(
        &self,
        version: Version,
        sketch: ObjectId,
    ) -> Result<SceneGraph>;
    async fn add_segment(
        &self,
        version: Version,
        sketch: ObjectId,
        segment: SegmentCtor,
        label: Option<String>,
    ) -> Result<(SourceDelta, SceneGraphDelta)>;
    async fn edit_segment(
        &self,
        version: Version,
        sketch: ObjectId,
        segment_id: ObjectId,
        segment: SegmentCtor,
    ) -> Result<(SourceDelta, SceneGraphDelta)>;
    async fn delete_segment(
        &self,
        version: Version,
        sketch: ObjectId,
        segment_id: ObjectId,
    ) -> Result<(SourceDelta, SceneGraphDelta)>;
    async fn add_constraint(
        &self,
        version: Version,
        sketch: ObjectId,
        constraint: Constraint,
    ) -> Result<(SourceDelta, SceneGraphDelta)>;
    async fn edit_constraint(
        &self,
        version: Version,
        sketch: ObjectId,
        constraint_id: ObjectId,
        constraint: Constraint,
    ) -> Result<(SourceDelta, SceneGraphDelta)>;
    async fn delete_constraint(
        &self,
        version: Version,
        sketch: ObjectId,
        constraint_id: ObjectId,
    ) -> Result<(SourceDelta, SceneGraphDelta)>;
}

Required Methods§

Source

async fn new_sketch( &self, project: ProjectId, file: FileId, version: Version, args: SketchArgs, ) -> Result<(SourceDelta, SceneGraphDelta, ObjectId)>

Source

async fn edit_sketch( &self, project: ProjectId, file: FileId, version: Version, sketch: ObjectId, ) -> Result<SceneGraphDelta>

Source

async fn exit_sketch( &self, version: Version, sketch: ObjectId, ) -> Result<SceneGraph>

Source

async fn add_segment( &self, version: Version, sketch: ObjectId, segment: SegmentCtor, label: Option<String>, ) -> Result<(SourceDelta, SceneGraphDelta)>

Source

async fn edit_segment( &self, version: Version, sketch: ObjectId, segment_id: ObjectId, segment: SegmentCtor, ) -> Result<(SourceDelta, SceneGraphDelta)>

Source

async fn delete_segment( &self, version: Version, sketch: ObjectId, segment_id: ObjectId, ) -> Result<(SourceDelta, SceneGraphDelta)>

Source

async fn add_constraint( &self, version: Version, sketch: ObjectId, constraint: Constraint, ) -> Result<(SourceDelta, SceneGraphDelta)>

Source

async fn edit_constraint( &self, version: Version, sketch: ObjectId, constraint_id: ObjectId, constraint: Constraint, ) -> Result<(SourceDelta, SceneGraphDelta)>

Source

async fn delete_constraint( &self, version: Version, sketch: ObjectId, constraint_id: ObjectId, ) -> Result<(SourceDelta, SceneGraphDelta)>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§