FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

simple-binary-encoding/csharp at master · morristech/simple-binary-encoding · GitHub

Latest commit

 

History

History
 
 

README.md

Overview

There is a user guide for people who wish to use the C# generator. This document is to assist developers working on the the SBE C# generator itself.

Environment

Java and gradlew are used to build the generator.

git bash and shell scripts are used for scripting.

The C# code is built using Visual Studio Community 2017.

Code Layout

The Java code that performs the generation of C# code is here.

$ ./gradlew                       # Will build sbe-tool jar
$ ./gradlew generateCSharpCodecs  # will generate the test, benchmark, and example C# code

The Visual Studio 2017 Community solution provides the projects:

  • sbe-dll (for common marshalling and DirectBuffer functionality)
  • sbe-generated (containing C# code generated by sbe-tool)
  • sbe-tests (an mstest suite for unit testing)
  • sbe-benchmarks (for performance testing and tuning)
  • sbe-example-car (sample code based on the Car example)
  • sbe-example-extension (sample code based on the Car extension)

Roadmap

The csharp generator is as of March 2018 a beta release. The current roadmap contains:

  • Improved Documentation
  • Testing/bug fixes
  • Better nuget Packaging
  • Possible changes to make group objects accessible without requiring a linear progression.

Nuget Package

The nuget package can be built using ~csharp/.nuget/do-release.sh. It has a dependency on the [nuget.exe] (https://dist.nuget.org/index.html).

Before release it will probbalty be necessary to copy in changed files for the example contained in the published nuget package. This is a manual process for now.

Once the nuget package is built it can be tested within the example project by adding a local disk path to the nuget file locations and then updating sbe-tool within the example.

Want to build things yourself?

For now you can:

  • build the SBE csharp generator using gradlew
  • generate the csharp codecs using gradlew GenerateCSharpCodecs
  • Use the Visual Studio 2017 Community solution to build the solution, run the unit tests, examples and benchmarks
  • Use the command script
  • csharpbuild.cmd to build the dotnet core support
  • Use the bash script runtests.sh to run the tests
  • Build the nuget package via do-release.sh although this remains a largely manual process.

Back | FazBrowse Home | New Git URL