Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
- .woodpecker.yaml: image paths -> library/autojanet-{agent,dispatcher}
- .woodpecker.yaml: secret names RS_HARBOR_USER / RS_HARBOR_PASS (global)
- container/Dockerfile: restore COPY skills/, skills/ populated from opencode config
- skills/: 84 opencode skills bundled into image
- k8s/manifests: update image refs to library/
2.5 KiB
2.5 KiB
Swift Language Prompt Snippet
Key Concepts
- Optionals and Optional Chaining:
Type?wraps values that may be nil;?.chains safely - Protocols and Protocol Extensions: Define contracts with default implementations via extensions
- Value Types vs Reference Types: Structs and enums are value types; classes are reference types
- Closures: Self-contained blocks of functionality that capture surrounding context
- Property Wrappers:
@State,@Binding,@Publishedencapsulate property storage logic - Result Builders:
@ViewBuilder,@resultBuilderenable declarative DSL syntax - Actors and Structured Concurrency:
actortypes for data isolation;async let,TaskGroup - Generics: Type parameters with
whereclauses and associated type constraints - Enums with Associated Values: Each case can carry distinct typed payloads
- Extensions: Add methods, computed properties, and protocol conformance to existing types
Import Patterns
import Foundation— core library with data types, collections, networkingimport UIKit— iOS UI framework for traditional view controller architectureimport SwiftUI— declarative UI framework with reactive state management@testable import ModuleName— import with internal access for unit testing
File Patterns
Package.swift— Swift Package Manager manifest defining targets and dependencies*.xcodeproj/*.xcworkspace— Xcode project and workspace configurationAppDelegate.swift— UIKit application lifecycle entry pointApp.swift— SwiftUI application entry point using@mainTests/— test target directory following SPM or Xcode conventions
Common Frameworks
- SwiftUI — Declarative UI framework with reactive data flow
- UIKit — Imperative UI framework using view controllers and Auto Layout
- Vapor — Server-side Swift web framework with async support
- Combine — Reactive framework for processing values over time
- Core Data — Object graph and persistence framework
Example Language Notes
Uses
@Publishedproperty wrapper to automatically notify SwiftUI views of state changes. When the wrapped value mutates, the property wrapper triggersobjectWillChangeon the enclosingObservableObject, causing dependent views to re-render.Protocol extensions provide default implementations, allowing types to conform by simply declaring conformance — no method body needed if defaults suffice.