Swift implementation of executable semantics of Carbon.
- Have Swift installed and in your path.
git submodule update --init
make build
make test
make test 2>&1 | sed -Ee 's/.*"(.*)", (.*)\.\.<(.*)\)\).*/\1:\2:{\2-\3}/g'
make Sources/Parser.swift
open Package.swift
Note that if you modify Sources/Parser.citron, or when you pull new changes from
GitHub, you'll need to run the make
command above again before proceeding.
Try to ensure you've tested all the interesting code paths!
Use these instructions from Xcode, or from the command-line
make test-lcov
to generate .build/coverage.lcov
, a standard coverage format. If you use
Emacs, you can inspect it using the
coverlay package. If you have a
different tool that reads the json format created by the swift test
command by
default, it's
make test-jcov
You'll find the output in .build/debug/codecov/CarbonInterpreter.json
.
If you install MinGW, you can use
make Sources/Parser.swift
followed by swift build
or swift test
, with the
same caveat as for Xcode users: if you modify Sources/Parser.citron, and when
you pull new changes from GitHub, you'll need to run the make
command again
before proceeding. If you don't want to install MinGW, you should be able to
read the simple Makefile to figure out how to build citron and use it to
"manually" generate Sources/Parser.swift from Sources/Parser.citron.