summary refs log blame commit diff
path: root/bin/fmt
blob: 60070dddc63e1bc1fd6764f454f9fa4f9a0aee58 (plain) (tree)
1
2
3
4
5
6
7

           



                                                                        
                                                                            




















                                                                               
                                                                                             
#!/bin/bash

# Copyright 2019 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# Run `rustfmt` on all Rust code contained in crosvm. This is different from
# `cargo fmt --all` which formats multiple crates but a single workspace only.
# Crosvm consists of multiple workspaces.
#
# Usage:
#
#    $ bin/fmt
#
# To print a diff and exit 1 if code is not formatted, but without changing any
# files, use:
#
#    $ bin/fmt --check
#

set -euo pipefail

# Change into directory of script, which is crosvm/bin.
cd "$(dirname "${BASH_SOURCE[0]}")"

# Jump up to root directory of crosvm repo.
cd ..

find . -name '*.rs' -print0 | grep -vz '^./target/' | xargs -0 rustfmt --edition=2018 "$@" --