summaryrefslogtreecommitdiffstats
path: root/third_party/rust/target-lexicon/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/target-lexicon/README.md')
-rw-r--r--third_party/rust/target-lexicon/README.md20
1 files changed, 20 insertions, 0 deletions
diff --git a/third_party/rust/target-lexicon/README.md b/third_party/rust/target-lexicon/README.md
new file mode 100644
index 0000000000..2e539eb716
--- /dev/null
+++ b/third_party/rust/target-lexicon/README.md
@@ -0,0 +1,20 @@
+This is a library for managing targets for compilers and related tools.
+
+Currently, the main feature is support for decoding "triples", which
+are strings that identify a particular target configuration. They're named
+"triples" because historically they contained three fields, though over time
+they've added additional fields. This library provides a `Triple` struct
+containing enums for each of fields of a triple. `Triple` implements
+`FromStr` and `fmt::Display` so it can be converted to and from the
+conventional string representation of a triple.
+
+`Triple` also has functions for querying a triple's endianness,
+pointer bit width, and binary format.
+
+And, `Triple` and the enum types have `host()` constructors, for targeting
+the host.
+
+It supports all triples currently used by rustc and rustup.
+
+It does not support reading JSON target files itself. To use it with a JSON
+target file, construct a `Triple` using the value of the "llvm-target" field.