EverParse 2022.6.13

dotnet add package EverParse --version 2022.6.13
                    
NuGet\Install-Package EverParse -Version 2022.6.13
                    
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="EverParse" Version="2022.6.13" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="EverParse" Version="2022.6.13" />
                    
Directory.Packages.props
<PackageReference Include="EverParse" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add EverParse --version 2022.6.13
                    
#r "nuget: EverParse, 2022.6.13"
                    
#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.
#:package EverParse@2022.6.13
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=EverParse&version=2022.6.13
                    
Install as a Cake Addin
#tool nuget:?package=EverParse&version=2022.6.13
                    
Install as a Cake Tool

EverParse: verified parsing for binary data formats

Copyright (C) 2019, 2020 Microsoft Corporation. All rights reserved.

Please read the license files for EverParse and its included dependencies in the licenses\ subdirectory. Your use of this software implies your unconditional acceptance of the terms of these licenses.

DESCRIPTION

EverParse takes a semi-formal description of binary formats and automatically produces C implementations of validators formally verified with respect to memory safety, functional correctness, and absence of double fetches.

USAGE

  1. Write your format description in a .3d file, say MyFormat.3d

  2. Run the following command:

    <path-to-everparse>\everparse.cmd <path-to-your-file>\MyFormat.3d

Then, EverParse produces, in the current directory:

  • MyFormat.fsti and MyFormat.fst, a specification of your data formats and a formally verified implementation of validators, both in the F* verification language

  • MyFormat.h and MyFormat.c, a C implementation compiled from the verified F* implementation

  • MyFormatWrappers.h and MyFormatWrappers.c, a cleaner interface for integration with any existing outside code.

  • EverParse.h (EverParse-specific helpers) and EverParseEndianness.h (reading integers from their byte representations).

You can provide several .3d files in the same invocation; then, EverParse.h and EverParseEndianness.h will be shared across .c and .h files produced for all the .3d files that you provided.

EverParse and F* are components of the Everest project. For more information about EverParse, F* and Everest, please go to https://project-everest.github.io/

This is EverParse v2022.06.13 Running with F* 061f57e546 (2022-06-09 01:34:57 UTC+0000) Running with KaRaMeL d67210df (2022-05-12 20:29:06 UTC+0000) Running with Z3 version 4.8.5 - 64 bit

Product Compatible and additional computed target framework versions.
native native is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2022.6.13 222,759 6/14/2022

Nuget package for EverParse