diff options
| author | Nixon Enraght-Moony <nixon.emoony@gmail.com> | 2022-03-11 19:11:23 +0000 |
|---|---|---|
| committer | Nixon Enraght-Moony <nixon.emoony@gmail.com> | 2022-03-15 18:34:16 +0000 |
| commit | 26829c03b0689c53e09e5bdfc329de78e95791f4 (patch) | |
| tree | f5182cfda5d09a21631dc8540900e6ea82397d61 | |
| parent | dc6b5cb9f3a554a2a9016e819cb2760b68bd663e (diff) | |
rustdoc-json: Lifetime tests
| -rw-r--r-- | src/test/rustdoc-json/lifetime/longest.rs | 33 | ||||
| -rw-r--r-- | src/test/rustdoc-json/lifetime/outlives.rs | 23 |
2 files changed, 56 insertions, 0 deletions
diff --git a/src/test/rustdoc-json/lifetime/longest.rs b/src/test/rustdoc-json/lifetime/longest.rs new file mode 100644 index 00000000000..95b99599e73 --- /dev/null +++ b/src/test/rustdoc-json/lifetime/longest.rs @@ -0,0 +1,33 @@ +// ignore-tidy-linelength + +#![feature(no_core)] +#![no_core] + +// @is longest.json "$.index[*][?(@.name=='longest')].inner.generics.params[0].name" \"\'a\" +// @is - "$.index[*][?(@.name=='longest')].inner.generics.params[0].kind" '{"lifetime": {"outlives": []}}' +// @is - "$.index[*][?(@.name=='longest')].inner.generics.params[0].kind" '{"lifetime": {"outlives": []}}' +// @count - "$.index[*][?(@.name=='longest')].inner.generics.params[*]" 1 +// @is - "$.index[*][?(@.name=='longest')].inner.generics.where_predicates" [] + +// @count - "$.index[*][?(@.name=='longest')].inner.decl.inputs[*]" 2 +// @is - "$.index[*][?(@.name=='longest')].inner.decl.inputs[0][0]" '"l"' +// @is - "$.index[*][?(@.name=='longest')].inner.decl.inputs[1][0]" '"r"' + +// @is - "$.index[*][?(@.name=='longest')].inner.decl.inputs[0][1].kind" '"borrowed_ref"' +// @is - "$.index[*][?(@.name=='longest')].inner.decl.inputs[0][1].inner.lifetime" \"\'a\" +// @is - "$.index[*][?(@.name=='longest')].inner.decl.inputs[0][1].inner.mutable" false +// @is - "$.index[*][?(@.name=='longest')].inner.decl.inputs[0][1].inner.type" '{"inner": "str", "kind": "primitive"}' + +// @is - "$.index[*][?(@.name=='longest')].inner.decl.inputs[1][1].kind" '"borrowed_ref"' +// @is - "$.index[*][?(@.name=='longest')].inner.decl.inputs[1][1].inner.lifetime" \"\'a\" +// @is - "$.index[*][?(@.name=='longest')].inner.decl.inputs[1][1].inner.mutable" false +// @is - "$.index[*][?(@.name=='longest')].inner.decl.inputs[1][1].inner.type" '{"inner": "str", "kind": "primitive"}' + +// @is - "$.index[*][?(@.name=='longest')].inner.decl.output.kind" '"borrowed_ref"' +// @is - "$.index[*][?(@.name=='longest')].inner.decl.output.inner.lifetime" \"\'a\" +// @is - "$.index[*][?(@.name=='longest')].inner.decl.output.inner.mutable" false +// @is - "$.index[*][?(@.name=='longest')].inner.decl.output.inner.type" '{"inner": "str", "kind": "primitive"}' + +pub fn longest<'a>(l: &'a str, r: &'a str) -> &'a str { + if l.len() > r.len() { l } else { r } +} diff --git a/src/test/rustdoc-json/lifetime/outlives.rs b/src/test/rustdoc-json/lifetime/outlives.rs new file mode 100644 index 00000000000..096dd7f7a69 --- /dev/null +++ b/src/test/rustdoc-json/lifetime/outlives.rs @@ -0,0 +1,23 @@ +// ignore-tidy-linelength + +#![feature(no_core)] +#![no_core] + +// @count outlives.json "$.index[*][?(@.name=='foo')].inner.generics.params[*]" 3 +// @is - "$.index[*][?(@.name=='foo')].inner.generics.where_predicates" [] +// @is - "$.index[*][?(@.name=='foo')].inner.generics.params[0].name" \"\'a\" +// @is - "$.index[*][?(@.name=='foo')].inner.generics.params[1].name" \"\'b\" +// @is - "$.index[*][?(@.name=='foo')].inner.generics.params[2].name" '"T"' +// @is - "$.index[*][?(@.name=='foo')].inner.generics.params[0].kind.lifetime.outlives" [] +// @is - "$.index[*][?(@.name=='foo')].inner.generics.params[1].kind.lifetime.outlives" [\"\'a\"] +// @is - "$.index[*][?(@.name=='foo')].inner.generics.params[2].kind.type.default" null +// @count - "$.index[*][?(@.name=='foo')].inner.generics.params[2].kind.type.bounds[*]" 1 +// @is - "$.index[*][?(@.name=='foo')].inner.generics.params[2].kind.type.bounds[0].outlives" \"\'b\" +// @is - "$.index[*][?(@.name=='foo')].inner.decl.inputs[0][1].kind" '"borrowed_ref"' +// @is - "$.index[*][?(@.name=='foo')].inner.decl.inputs[0][1].inner.lifetime" \"\'a\" +// @is - "$.index[*][?(@.name=='foo')].inner.decl.inputs[0][1].inner.mutable" false +// @is - "$.index[*][?(@.name=='foo')].inner.decl.inputs[0][1].inner.type.kind" '"borrowed_ref"' +// @is - "$.index[*][?(@.name=='foo')].inner.decl.inputs[0][1].inner.type.inner.lifetime" \"\'b\" +// @is - "$.index[*][?(@.name=='foo')].inner.decl.inputs[0][1].inner.type.inner.mutable" false +// @is - "$.index[*][?(@.name=='foo')].inner.decl.inputs[0][1].inner.type.inner.type" '{"inner": "T", "kind": "generic"}' +pub fn foo<'a, 'b: 'a, T: 'b>(_: &'a &'b T) {} |
