Security News
Node.js EOL Versions CVE Dubbed the "Worst CVE of the Year" by Security Experts
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
Objc2Swift.js is an Objective-C to Swift converter written in JavaScript. (Live Demo)
This project is still highly experimenal and does not aim to provide human-less conversion. However, the most of Objective-C code can be converted to proper Swift code with less compilation errors.
Note: the author currently has no plan to support full features of Swift 3 or greater.
#import
delective with pre-compiled header cache.$ npm install -g objc2swift
Then, run the objc2swift
command with --init
option to setup the default configuration.
$ objc2swift --init ios
Note that the parameter ios
means to setup objc2swift for using Xcode's iOS SDK. If you want to target other SDK, use osx
, tvos
or watchos
.
Pass the target source file to the command. The conversion result will be written to the current directory with extension .swift
.
$ objc2swift foo.m
The first conversion is very slow since there is no pre-compiled header cache. It will be speed-up later.
By default, the command searches user headers from the current directory and its subdirectories.
To import more headers, use -I
option can be used to specifiy include paths. For example,
$ objc2swift -I ~/git/myproject/ foo.m
The path specified by -I
is recursively traversed.
The default config path is ~/.objc2swift/config.json
. A typical content of config.json is like following.
If you want to add user header search path permanently instead of -I
, add the path to includePaths
array.
{
"systemIncludePaths": [
"${Xcode.app}/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks",
"${Xcode.app}/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/include",
"${Xcode.app}/Contents/Developer/Platforms/iPhoneOS.platform/usr/lib/clang/3.5/include"
],
"includePaths": []
}
git clone https://github.com/okaxaki/objc2swift.git
cd objc2swift
npm install
npm run build
FAQs
Objective-C to Swift Converter
We found that objc2swift demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
Security News
cURL and Go security teams are publicly rejecting CVSS as flawed for assessing vulnerabilities and are calling for more accurate, context-aware approaches.
Security News
Bun 1.2 enhances its JavaScript runtime with 90% Node.js compatibility, built-in S3 and Postgres support, HTML Imports, and faster, cloud-first performance.