FsEx 0.15.0

dotnet add package FsEx --version 0.15.0                
NuGet\Install-Package FsEx -Version 0.15.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="FsEx" Version="0.15.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add FsEx --version 0.15.0                
#r "nuget: FsEx, 0.15.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install FsEx as a Cake Addin
#addin nuget:?package=FsEx&version=0.15.0

// Install FsEx as a Cake Tool
#tool nuget:?package=FsEx&version=0.15.0                

FsEx

code size license

Logo

FsEx is an FSharp extension and utility library mostly focused on collections and strings.

It Includes:

  • A thin wrapper over the ResizeArray type called Rarr. It provides structural equality ,additional members and more detailed error messages when the List is used with out of bound indices.
  • A Rarr module that provides all the functions for Rarr that the Array module from FSharp.Core has. Including those for parallel computing.
  • A thin wrapper over the generic Dictionary type called Dict. It provides additional members and more detailed error messages when a given Key is not found.
  • An implementation of defaultdict called DefDict , a dictionary that creates a key when its accessed but missing.
  • A comprehensive module for working with string, including nice error messages.
  • Useful extension members to existing collections like seq, array, Dictionary, StringBuilder.
  • Computational Expressions for building Rarr, strings, and CSV-files. Like they exist for seq, list and array in FSharp.Core
  • Pretty printing for collections
  • and more ..

See full API documentation on fuget.org

License

MIT

Changelog

0.15.0

  • Printfn functions to find Fesh editor via Reflection
  • fix Rarr AsReadOnly
  • fix normalize str

0.14.1

  • add Rarr.notExists
  • add Rarr.prepend
  • add String.containsIgnoreCase
  • fix maybe monad

0.13.2

  • add Rarr.pickBack
  • add rotateUpTill
  • add rotateDownTill

0.13.1

  • print with a HighlightColor for a Regex in Seff

0.13.0

  • move IO, Kernel32 and external Processes modules out to new package FsEx.IO

0.12.0

  • add >>! operator
  • cleanup Rarr docstr
  • add memoizeInDict
  • add IList module to match Rarr module
  • remove Rarr.createFromSeq
  • add Seq.iterIndexed
  • add Seq.repeat
  • add FloatMathOperators module

0.11.0

  • improve randomness of random color
  • rename Dict and DefaultDict members Add and Set
  • add getOrSetDefault to Dict
  • add String.addPrefix String.addSuffix
  • add Seq.tryFindDuplicate and Seq.duplicates
  • rename Dict.setOnce to Dict.setIfKeyAbsent
  • remove cmp
  • Array.second, Array.last and similar functions
  • better Error messages
  • add IO.createDirectoriesOfFilePath
  • better toNiceString
  • add String.beforeOrInput, .afterOrInput and .betweenOrInput
  • remove dependency on System.Drawing
  • rename Rarr.find to Rarr.findValue
  • add Rarr.getInternalList
  • add Rarr.mapFromIList .mapFromSeq and .mapFromArray
  • add rarr.InternalList to access internal ResizeArray
  • add Rarr.trim
  • prev-this-next for Rarr

0.10.1

  • add MathUtil.interpolateTable function
  • improve NiceString formatting of F# records
  • rename stringbuffer to str
  • improve move and rename String.Truncate functions to NiceFormat module

0.9.0

  • Fix xml doc that was broken in 0.8.0
  • Lower minimum FSharp.Core version to 4.5.2
  • add tryWith,tryFinally and Using to ComputationalExpressionsBuilders
  • fix typos in docstring

0.8.0

  • update Process Module for running external Processes
  • improve float formatting in toNiceString module
  • add more colors for printing via Seff editor
  • fix typos in docstrings

0.7.0

  • Add Process Module for running external Processes
  • Fix Rarr.rotate
  • Add Rarr.isNotEmpty
  • Add IO.getAllFilesInParentsByPattern
  • Typo in Timer μs is actually ms
  • Add String.truncate, skip and take methods

0.5.1

  • Updated Rarr and RarrModule
  • Updated StringModule
  • Improved Exception messages.
  • nicer pretty printing via print function

0.4.0

  • first public release
Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Framework net472 is compatible.  net48 was computed.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on FsEx:

Package Downloads
Rhino.Scripting

A complete re-implementation of the RhinoPython scripting syntax for use with F# and C#. For Rhino 6.0 or higher.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
0.15.0 146 7/5/2024
0.14.1 247 6/18/2023
0.14.0 267 2/26/2023
0.13.1 440 12/3/2022
0.13.0 344 12/3/2022
0.12.0 367 11/25/2022
0.11.0 445 9/25/2022
0.10.1 457 4/3/2022
0.9.0 9,006 1/11/2022
0.8.0 301 12/11/2021
0.7.0 316 10/19/2021
0.5.1 331 8/26/2021
0.4.0 369 4/10/2021

- Printfn functions to find Fesh editor via Reflection
     - fix Rarr AsReadOnly
     - fix normalize str