Files
lime/src/package.lisp
2026-10-02 14:14:47 -05:00

257 lines
7.2 KiB
Common Lisp

(defpackage #:lime.core
(:use #:cl)
(:documentation
"The protocol-independent Activity/View/Head/Lease model used by Lime.")
(:export
;; Conditions
#:lime-error
#:unknown-entity
#:unknown-entity-kind
#:unknown-entity-id
#:invalid-activity-membership
#:invalid-activity-membership-client-id
#:invalid-activity-membership-activity-id
#:activation-blocked
#:activation-blocked-report
#:stale-transition-plan
#:degraded-presentation-update
#:invalid-transition
;; Data types and accessors useful to the UI/backend layer.
#:world
#:make-world
#:normalize-activity-arrangements
#:world-revision
#:activity
#:activity-id
#:activity-name
#:activity-client-ids
#:activity-view-ids
#:client
#:client-id
#:client-activity-id
#:client-shared-p
#:client-available-in-activity-p
#:activity-available-client-ids
#:client-name
#:client-metadata
#:placement
#:make-placement
#:placement-client-id
#:placement-kind
#:placement-data
#:placement-tile-weight
#:default-floating-placement-data
#:layout-leaf
#:make-layout-leaf
#:layout-leaf-client-id
#:layout-split
#:make-layout-split
#:layout-split-orientation
#:layout-split-ratio
#:layout-split-first
#:layout-split-second
#:layout-node-client-ids
#:geometry
#:make-geometry
#:geometry-x
#:geometry-y
#:geometry-width
#:geometry-height
#:default-layout-root
#:master-stack-layout-root
#:resolve-presentation-layout
#:view
#:view-id
#:view-activity-id
#:view-name
#:view-placements
#:view-layout-root
#:view-layout-mode
#:view-layout-options
#:view-focus-client-id
#:viewset-entry
#:make-viewset-entry
#:viewset-entry-head-id
#:viewset-entry-view-id
#:viewset
#:viewset-id
#:viewset-name
#:viewset-entries
#:head
#:head-id
#:head-active-presentation-id
#:presentation
#:presentation-id
#:presentation-head-id
#:presentation-activity-id
#:presentation-source-view-id
#:presentation-placements
#:presentation-layout-root
#:presentation-layout-mode
#:presentation-layout-options
#:presentation-focus-client-id
#:presentation-dirty-p
#:presentation-unavailable-client-ids
#:lease
#:lease-client-id
#:lease-presentation-id
#:activation-conflict
#:activation-conflict-kind
#:activation-conflict-client-id
#:activation-conflict-view-id
#:activation-conflict-holder-head-id
#:activation-conflict-holder-presentation-id
#:activation-report
#:activation-report-world-revision
#:activation-report-head-id
#:activation-report-view-id
#:activation-report-source-presentation-id
#:activation-report-activity-id
#:activation-report-current-presentation-id
#:activation-report-desired-placements
#:activation-report-desired-layout-root
#:activation-report-desired-layout-mode
#:activation-report-desired-layout-options
#:activation-report-focus-client-id
#:activation-report-conflicts
#:activation-plan
#:activation-plan-policy
#:activation-plan-layout-mode
#:activation-plan-layout-options
#:viewset-conflict
#:viewset-conflict-kind
#:viewset-conflict-target-head-id
#:viewset-conflict-client-id
#:viewset-conflict-view-id
#:viewset-conflict-holder-head-id
#:viewset-conflict-holder-presentation-id
#:viewset-report
#:viewset-report-world-revision
#:viewset-report-viewset-id
#:viewset-report-entries
#:viewset-report-outgoing-presentation-ids
#:viewset-report-conflicts
#:viewset-plan
#:viewset-plan-policy
#:viewset-result
#:viewset-result-viewset-id
#:viewset-result-presentation-ids
#:viewset-result-unavailable-client-ids-by-head
#:head-topology-source
#:head-topology-source-head-id
#:head-topology-source-presentation-id
#:head-topology-source-activity-id
#:head-topology-source-source-view-id
#:head-topology-report
#:head-topology-report-world-revision
#:head-topology-report-current-head-ids
#:head-topology-report-desired-head-ids
#:head-topology-report-added-head-ids
#:head-topology-report-retained-head-ids
#:head-topology-report-removed-head-ids
#:head-topology-report-removed-active-sources
#:head-topology-move
#:make-head-topology-move
#:head-topology-move-from-head-id
#:head-topology-move-to-head-id
#:head-topology-plan
#:head-topology-plan-base-revision
#:head-topology-plan-current-head-ids
#:head-topology-plan-desired-head-ids
#:head-topology-plan-added-head-ids
#:head-topology-plan-removed-head-ids
#:head-topology-plan-moves
#:head-topology-result
#:head-topology-result-moved-presentation-ids
#:head-topology-result-suspended-presentation-ids
#:head-topology-result-added-head-ids
#:head-topology-result-removed-head-ids
;; Queries.
#:find-activity
#:find-client
#:find-view
#:find-viewset
#:find-head
#:find-presentation
#:list-activities
#:activity-deletion-summary
#:list-viewsets
#:current-presentation
#:activity-draft-for-head
#:lease-for-client
#:presentation-client-ids
#:presentation-leased-client-ids
#:presentation-hidden-client-ids
#:presentation-active-p
#:activation-report-ready-p
#:viewset-report-ready-p
;; Model construction.
#:create-head
#:create-activity
#:delete-activity
#:create-client
#:move-client-to-activity
#:move-client-to-presentation
#:set-client-shared
#:make-client-private-in-presentation
#:create-view
#:create-viewset
;; Planning and transitions.
#:preflight-view-activation
#:preflight-presentation-resume
#:activity-presentations
#:preflight-presentation-bring
#:bring-presentation-to-head
#:preflight-activity-draft
#:preflight-viewset-activation
#:preflight-head-topology-reconciliation
#:build-strict-activation-plan
#:build-partial-activation-plan
#:build-taking-activation-plan
#:commit-activation-plan
#:build-strict-viewset-plan
#:build-partial-viewset-plan
#:build-taking-viewset-plan
#:commit-viewset-plan
#:build-head-topology-reconciliation-plan
#:commit-head-topology-reconciliation-plan
#:activate-view-strictly
#:activate-view-partially
#:activate-view-taking
#:activate-viewset-strictly
#:activate-viewset-partially
#:activate-viewset-taking
#:resume-presentation-strictly
#:resume-presentation-partially
#:resume-presentation-taking
#:open-activity-draft
#:retire-client
#:transfer-client-lease
#:reclaim-available-slots
#:show-client-on-presentation
#:hide-client-from-presentation
#:hide-focused-client-in-presentation
#:focus-client-on-presentation
#:set-presentation-layout-root
#:set-presentation-layout-mode
#:set-presentation-master-stack-layout
#:set-presentation-monocle-layout
#:set-presentation-manual-layout
#:set-client-tile-weight
#:set-focused-layout-split-orientation
#:adjust-focused-layout-split-ratio
#:swap-presentation-layout-clients
#:swap-focused-layout-client
#:promote-client-to-master
#:presentation-client-floating-p
#:toggle-client-floating
#:toggle-focused-client-floating
#:set-client-floating-geometry
#:update-view-from-presentation
#:save-view-from-presentation
#:validate-world))