nushell/crates
Ian Manske 68fcd71898
Add Value::coerce_str (#11885)
# Description
Following #11851, this PR adds one final conversion function for
`Value`. `Value::coerce_str` takes a `&Value` and converts it to a
`Cow<str>`, creating an owned `String` for types that needed converting.
Otherwise, it returns a borrowed `str` for `String` and `Binary`
`Value`s which avoids a clone/allocation. Where possible, `coerce_str`
and `coerce_into_string` should be used instead of `coerce_string`,
since `coerce_string` always allocates a new `String`.
2024-02-18 17:47:10 +01:00
..
nu_plugin_custom_values bump to dev release of nushell 0.90.2 (#11793) 2024-02-07 16:26:03 -06:00
nu_plugin_example Remove Record::from_raw_cols_vals_unchecked (#11810) 2024-02-18 14:20:22 +02:00
nu_plugin_formats Add Value::coerce_str (#11885) 2024-02-18 17:47:10 +01:00
nu_plugin_gstat Name the Value conversion functions more clearly (#11851) 2024-02-17 18:14:16 +00:00
nu_plugin_inc Name the Value conversion functions more clearly (#11851) 2024-02-17 18:14:16 +00:00
nu_plugin_python remove vectorize_over_list from python plugin (#9905) 2023-08-03 16:46:48 +02:00
nu_plugin_query Add Value::coerce_str (#11885) 2024-02-18 17:47:10 +01:00
nu-cli Add Value::coerce_str (#11885) 2024-02-18 17:47:10 +01:00
nu-cmd-base Name the Value conversion functions more clearly (#11851) 2024-02-17 18:14:16 +00:00
nu-cmd-dataframe Remove Record::from_raw_cols_vals_unchecked (#11810) 2024-02-18 14:20:22 +02:00
nu-cmd-extra Remove Record::from_raw_cols_vals_unchecked (#11810) 2024-02-18 14:20:22 +02:00
nu-cmd-lang Prevent duplicate keys for lazy make (#11808) 2024-02-14 00:00:52 +00:00
nu-color-config Add Value::coerce_str (#11885) 2024-02-18 17:47:10 +01:00
nu-command Add Value::coerce_str (#11885) 2024-02-18 17:47:10 +01:00
nu-engine Add Value::coerce_str (#11885) 2024-02-18 17:47:10 +01:00
nu-explore Add Value::coerce_str (#11885) 2024-02-18 17:47:10 +01:00
nu-glob bump to dev release of nushell 0.90.2 (#11793) 2024-02-07 16:26:03 -06:00
nu-json bump to dev release of nushell 0.90.2 (#11793) 2024-02-07 16:26:03 -06:00
nu-lsp Bump miette from 5.10.0 to 7.0.0 (#11788) 2024-02-07 19:26:18 -06:00
nu-parser Name the Value conversion functions more clearly (#11851) 2024-02-17 18:14:16 +00:00
nu-path bump to dev release of nushell 0.90.2 (#11793) 2024-02-07 16:26:03 -06:00
nu-plugin bump to dev release of nushell 0.90.2 (#11793) 2024-02-07 16:26:03 -06:00
nu-pretty-hex bump to dev release of nushell 0.90.2 (#11793) 2024-02-07 16:26:03 -06:00
nu-protocol Add Value::coerce_str (#11885) 2024-02-18 17:47:10 +01:00
nu-std Bump miette from 5.10.0 to 7.0.0 (#11788) 2024-02-07 19:26:18 -06:00
nu-system bump to dev release of nushell 0.90.2 (#11793) 2024-02-07 16:26:03 -06:00
nu-table Name the Value conversion functions more clearly (#11851) 2024-02-17 18:14:16 +00:00
nu-term-grid bump to dev release of nushell 0.90.2 (#11793) 2024-02-07 16:26:03 -06:00
nu-test-support Bump which from 5.0.0 to 6.0.0 (#11832) 2024-02-15 14:43:56 +00:00
nu-utils update default_config with new defaults (#11856) 2024-02-14 13:01:27 -06:00
README.md Remove old nushell/merge engine-q 2022-02-07 14:54:06 -05:00

Nushell core libraries and plugins

These sub-crates form both the foundation for Nu and a set of plugins which extend Nu with additional functionality.

Foundational libraries are split into two kinds of crates:

  • Core crates - those crates that work together to build the Nushell language engine
  • Support crates - a set of crates that support the engine with additional features like JSON support, ANSI support, and more.

Plugins are likewise also split into two types:

  • Core plugins - plugins that provide part of the default experience of Nu, including access to the system properties, processes, and web-connectivity features.
  • Extra plugins - these plugins run a wide range of different capabilities like working with different file types, charting, viewing binary data, and more.