Skip to content

Instantly share code, notes, and snippets.

View seclerp's full-sized avatar
:octocat:

Andrii Rublov seclerp

:octocat:
View GitHub Profile
@seclerp
seclerp / Program.csrpoj
Created November 15, 2022 16:53
Solution for the task "Run the Java Hello World example via both dotnet run and javac"
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net6.0</TargetFramework>
<EnableDefaultCompileItems>false</EnableDefaultCompileItems>
</PropertyGroup>
<Target Name="GenerateCsharp" BeforeTargets="BeforeBuild" KeepDuplicateOutputs="true">
<WriteLinesToFile File="Program.generated.cs" Overwrite="true" Encoding="Unicode" Lines="$([System.IO.File]::ReadAllText('Program.java').Replace('main','Main').Replace('System.out.println','System.Console.WriteLine'))" />
<ItemGroup>
<Compile Include="Program.generated.cs" />
@seclerp
seclerp / CistHtmlParser.cs
Last active October 31, 2022 03:54
Cist.nure.ua simple parser
using HtmlAgilityPack;
namespace ConsoleApp7;
public record CistEvent(
string SubjectShortName, // e.g. Фіз, Про
string EventType, // e.g. Лб
string Place, // e.g. 165-3
DateOnly Date, // e.g. 02.11.2022
int Number, // e.g. 4
@seclerp
seclerp / ExampleInterceptors.cs
Last active July 7, 2022 16:33
Custom middleware-like Chain Of Responsibility implementation
namespace Interceptors;
public class FirstInterceptor : IInterceptor
{
public async Task InvokeAsync(PipelineStep next, EventContext ctx)
{
Console.WriteLine($"Hello from interceptor {nameof(FirstInterceptor)}");
await next.Invoke(ctx);
}
@seclerp
seclerp / Context.cs
Created September 14, 2020 16:16
[C#] Chain of Responsibility pattern wthout reflection
public class Context
{
public int Counter { get; set; }
}
@seclerp
seclerp / gist:a95b7d2e526bab04f1ea60b9ec61522a
Created June 6, 2020 23:42 — forked from pitch-gist/gist:2999707
HTML: Simple Maintenance Page
<!doctype html>
<title>Site Maintenance</title>
<style>
body { text-align: center; padding: 150px; }
h1 { font-size: 50px; }
body { font: 20px Helvetica, sans-serif; color: #333; }
article { display: block; text-align: left; width: 650px; margin: 0 auto; }
a { color: #dc8100; text-decoration: none; }
a:hover { color: #333; text-decoration: none; }
</style>
@seclerp
seclerp / DependencyUtils.fs
Created January 7, 2020 20:44
Example of Autofac dependency injection functional helpers to use into composition manner
module DependencyUtils
open Autofac
open Microsoft.Extensions.Configuration
let addTransientAs<'service, 'implementation> (services: ContainerBuilder) =
services.RegisterType<'implementation>().As<'service>() |> ignore
services
let addScopedAs<'service, 'implementation> (services: ContainerBuilder) =
module MicroCosmo.Parser
open Piglet.Parser.Configuration
open Piglet.Parser
open MicroCosmo.Ast
open MicroCosmo.ParsingUtilities
open MicroCosmo.CompilerErrors
// Piglet configurator
let configurator = ParserFactory.Configure<obj>()
@seclerp
seclerp / Program.cs
Created April 8, 2018 17:51
Prime nubmer generator
using System;
using System.Collections.Generic;
public class Program
{
public static void Main()
{
for (int i = 0; i < 10; i++)
{
Console.Write(Prime(i) + " ");