Skip to content

mob-sakai/OpenSesameCompiler

 
 

Repository files navigation

Open Sesame Compiler

Nuget GitHub dl ci

Then Ali Baba climbed down and went to the door concealed among the bushes, and said, "Open, Sesame!" and it flew open.

This compiler is a rebuild of Roslyn compiler.

This compiler allows access to internals/privates in other assemblies.

Changes from original

  • Change package name to OpenSesameCompiler
  • Allow unsafe code automatically
  • Add MetadataImportOptions.All to compilation options
  • All public static methods in AccessCheck class will return true

How to run (demo)

  1. Clone demo project
git clone demo-proj
cd demo-proj
  1. The compilation will fail because this project contains internals/privates access.
# The following command will fail.
dotnet run
  1. Install OpenSesameCompiler package to project from nuget
dotnet add OpenSesameCompiler
  1. Add <CscToolPath>$(PkgOpenSesameCompiler)tools/csc.exe</CscToolPath> to PropertyGroup in demo.csproj.
    Or, execute the following command.
dotnet run /p:CscToolPath=$(PkgOpenSesameCompiler)tools/csc.exe
  1. Enjoy!







Welcome to the .NET Compiler Platform ("Roslyn")

Desktop Unit Tests

Branch Debug x86 Debug x64 Release x86 Release x64
master Build Status Build Status Build Status Build Status
master-vs-deps Build Status Build Status Build Status Build Status

CoreClr Unit Tests

Branch Windows Debug Windows Release Linux
master Build Status Build Status Build Status
master-vs-deps Build Status Build Status Build Status

Integration Tests

Branch Debug Release
master Build Status Build Status
master-vs-deps Build Status Build Status

Misc Tests

Branch Determinism Build Correctness Mono Spanish
master Build Status Build Status Build Status Build Status
master-vs-deps Build Status Build Status Build Status Build Status

Join the chat at https://gitter.im/dotnet/roslyn

Roslyn provides open-source C# and Visual Basic compilers with rich code analysis APIs. It enables building code analysis tools with the same APIs that are used by Visual Studio.

Language Design Discussion

We are now taking language feature discussion in other repositories:

Discussion about the transition of language design to the new repos is at dotnet#18002.

Download C# and Visual Basic

Want to start developing in C# and Visual Basic? Download Visual Studio 2019, which has the latest features built-in. There are also prebuilt Azure VM images available with Visual Studio 2019 already installed.

To install the latest release without Visual Studio, run one of the following nuget command lines:

nuget install Microsoft.Net.Compilers   # Install C# and VB compilers
nuget install Microsoft.CodeAnalysis    # Install Language APIs and Services

Daily NuGet builds of the project are also available in our MyGet feed:

https://dotnet.myget.org/F/roslyn/api/v3/index.json

See what's new with the C# and VB compilers.

Source code

Get started

Contribute!

Some of the best ways to contribute are to try things out, file bugs, and join in design conversations.

Looking for something to work on? The list of up for grabs issues is a great place to start.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

.NET Foundation

This project is part of the .NET Foundation along with other projects like the class libraries for .NET Core.

About

The Roslyn .NET compiler provides C# and Visual Basic languages with rich code analysis APIs.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 63.8%
  • Visual Basic .NET 36.0%
  • 1C Enterprise 0.1%
  • PowerShell 0.1%
  • Shell 0.0%
  • CMake 0.0%