Skip to content

Instantly share code, notes, and snippets.

public static class HttpClientHelpers
{
public static async Task<RestResponse<TResult>> PostJsonAsync<TResult>(this HttpClient client,
string resource,
object requestBody)
{
var json = requestBody != null ? JsonConvert.SerializeObject(requestBody) : string.Empty;
var request = new StringContent(json, Encoding.UTF8, "application/json");
var response = await client.PostAsync(resource, request);
return await RestResponse<TResult>.FromHttpResponseMessageAsync(response);

Как сейчас

  1. сегодня женерики в го - это только шаблоны через кодогенерацию и шаблоны
  2. допустим, что '!' в начале коммента - инструкция для кодогенератора
  3. '!placeholder' - значит, что тип будет использоваться в качестве "дырки" в шаблоне
  4. '!template' - значит, что тип или функция - это шаблоны
//!placeholder
type T = interface{}

//!template
@vabka
vabka / main.rs
Last active November 10, 2019 00:35
use actix_web::web::Json;
use actix_web::{get, App, HttpServer, Result};
use chrono::prelude::*;
use log::LevelFilter;
use serde::Serialize;
use std::io;
fn main() -> Result<(), io::Error> {
env_logger::builder().filter_level(LevelFilter::Info).init();
let service = HttpServer::new(|| App::new().service(today))
@vabka
vabka / Main.cs
Created November 28, 2019 14:42
Как скачать файл при помощи puppeteersharp, чтобы он скачался в нужную папку
using System;
using System.IO;
using System.Threading.Tasks;
using PuppeteerSharp;
namespace pptrTest
{
class Program
{
static async Task Main()
@vabka
vabka / Tree.cs
Last active January 15, 2020 14:37
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
namespace _
{
public sealed class Tree<TKey, TValue> : IEnumerable<KeyValuePair<TKey, Tree<TKey, TValue>.Node>>
where TKey : IEquatable<TKey>
{
type Container<T> = Readonly<{ value: T, pipe<U>(f: (value: T) => U): Container<T> }>;
class PersistentContainer<T> implements Container<T> {
private readonly _value: T;
public get value() {
return this._value;
}
constructor(value: T) {
export class CalendarDate {
private readonly date: Date;
constructor(date: Date) {
this.date = new Date(date);
}
public static today(): CalendarDate {
return new CalendarDate(new Date());
}
module ExhangeRatesAPI.Service
open ExhangeRatesAPI.Types
open ExhangeRatesAPI.Common
type Rate =
{ Left: Symbol
Right: Symbol
Value: decimal }
@vabka
vabka / test.js
Created September 24, 2021 21:57
function helloWorld() {
return "hello"
}
// And same for IQueryable
public static class EnumerableExtensions
{
public static T? SingleOrNull<T>(this IEnumerable<T> seq, Func<T, bool> predicate) where T : struct
{
var data = seq.Where(predicate).Take(2).ToArray();
if (data.Length == 2)
throw new InvalidOperationException();
if (data.Length == 0)
return null;