swift-precompiler

Crates.ioswift-precompiler
lib.rsswift-precompiler
version0.1.5
sourcesrc
created_at2024-01-13 00:37:20.629345
updated_at2024-03-09 17:46:16.943667
descriptionA precompiler for Swift that allows you to use additional macros, include files, and more.
homepagehttps://github.com/lockieluke/swift-precompiler
repositoryhttps://github.com/lockieluke/swift-precompiler
max_upload_size
id1098184
size37,215
Sherlock Luk (lockieluke)

documentation

https://docs.rs/swift-precompiler

README

Swift Precompiler

⚡ A fast, lightweight precompiler for Swift

Features

  • Add Rust's includeStr! like functionality to Swift with the precompileIncludeStr function

Installation

Cargo:

cargo install swift-precompiler

Configuration

Run swift-precompiler init to initialise a config file swift-precompiled.toml with the default values

Available options:

  • dirs - An array of directories to search for Swift source files that require precompilation
  • path_aliases - A dictionary of path aliases to use in precompile calls

Example:

dirs = ["Cider/", "CiderPlaybackAgent/"]

[path_aliases]
# "@" as a path alias refers to the current working directory in most cases
"@" = "./"

Usage

Including a file as a string literal at compile time:

let javaScript = precompileIncludeStr("path/to/file.js")

Include a file as a Data at compile time:

let image = precompileIncludeData("path/to/image.png")

Run swift-precompiler to precompile all Swift files in the directories specified in the config file

swift-precompiler precompile

You should add Precompiled.swift to your .gitignore

Swift Precompiler encodes your strings with Base64, you can add swift-extras-base64 to your project using SPM to enable faster Base64 decode.

Commit count: 0

cargo fmt