ILAssembler icon indicating copy to clipboard operation
ILAssembler copied to clipboard

ILAsm-like DSL for PowerShell

Results 15 ILAssembler issues
Sort by recently updated
recently updated
newest added

The `no.` prefix ([EMCA §III.2.2](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-335.pdf#page=344&zoom=100,116,96)) seems to be excluded from both `SRE.OpCodes` and `SRM.ILOpCodes`. I'll need to find out if it's actually supported and why it was excluded.

enhancement

https://github.com/SeeminglyScience/ILAssembler/blob/ccdac27792cbd89d800ace04fe5c896f58b8b210/src/ILAssembler/CilAssembler.cs#L244-L254 Saves one minor heap allocation every assemble, but not really worth the readability loss and the `stackalloc` doesn't guard against stack overflow.

enhancement

Currently `DynamicMethod`s are cached by their AST and signature. This check should be skipped if `Ast.Extent.File` is blank as the call site is very unlikely to be called again and...

enhancement

Maybe something like: ```powershell il -Closure 'test' ` -DelegateSignature { [int]([string]) } ` -MethodSignature { [int]([object], [string]) } ` -Body { ldarg.0 callvirt { [string] [object].ToString() } ldarg.1 call {...

enhancement

enhancement
good first issue

I wrote a disassembler from scratch awhile ago and never did anything with it. I should be able to just change the formatting. Probably will be hosted in a different...

enhancement

Thinking a fake attribute like: ```powershell using namespace System.Runtime.InteropServices il { [modreq([InAttribute])] [byref] [int] $_._() } { } ```

enhancement

Should look like: ```powershell using namespace System using namespace System.Diagnostics using namespace System.Runtime.CompilerServices il { [byref] [int] $_._([object[]] $args) } { # Method attribute .custom { [void] [DebuggerStepThroughAttribute].new() } =...

enhancement

Need: - [X] `calli` signature calling convention handling - [ ] Method signature parsing

enhancement

Here's a rough draft of how that would look: ```powershell using namespace System using namespace System.IO using namespace System.Reflection using namespace System.Runtime.CompilerServices using namespace System.Text emitil -OutputPath ./bin { #...

enhancement