Skip to content

Latest commit

 

History

History
39 lines (26 loc) · 1.11 KB

File metadata and controls

39 lines (26 loc) · 1.11 KB

XCSKit

XCSKit is the umbrella product for the package. It does not define its own API surface; instead, it re-exports the individual modules so downstream clients can import a single module name.

What It Re-Exports

Importing XCSKit makes the public APIs of these modules available:

  • XCSCore
  • XCSParser
  • XCSValidator
  • XCSTranslator
  • XCSWriter
  • XCSAnalytics

This is implemented with @_exported import statements in the umbrella target.

Basic Usage

import Foundation
import XCSKit

let data = try Data(contentsOf: catalogURL)
let catalog = try XCSParser.parse(data: data)

let findings = XCSValidator.validate(catalog)
let stats = XCSAnalytics.statistics(in: catalog)

When To Use XCSKit

Use the umbrella import when:

  • you want convenience over minimal imports
  • you are building an app or CLI that uses several package layers together
  • you do not need strict compile-time separation between parser, validator, translator, writer, and analytics concerns

Prefer importing individual modules when you want tighter dependency boundaries or a smaller visible API surface in each file.