- 1
there are java.io.FileNotFoundException and java.nio.file.NoSuchFileException . Both are subclasses of IOException, neither of them is a subclass of the opposite.
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
there are java.io.FileNotFoundException and java.nio.file.NoSuchFileException . Both are subclasses of IOException, neither of them is a subclass of the opposite.
+1
private List<CellControl[]> ComposeLines(List<CellControl[]> vertical, List<CellControl[]> horizontal)
{
List<CellControl[]> result = new List<CellControl[]>();
foreach (var vLine in vertical)
{
var cellsCount = vLine.Length;
List<CellControl[]> linesToCompose = new List<CellControl[]>();
foreach (var vCell in vLine)
{
foreach (var hLine in horizontal)
{
foreach (var hCell in hLine)
{
if (hCell.X == vCell.X && hCell.Y == vCell.Y)
{
linesToCompose.Add(hLine);
cellsCount += hLine.Length;
break;
}
}
if (linesToCompose.Count == 0)
{
result.Add(hLine);
}
}
}
if (linesToCompose.Count == 0)
{
result.Add(vLine);
}
else
{
linesToCompose.Add(vLine);
var newLine = new CellControl[cellsCount];
var i = 0;
foreach (var line in linesToCompose)
{
foreach (var cellControl in line)
{
newLine[i] = cellControl;
cellControl.Selected = true;
i++;
}
}
result.Add(newLine);
}
}
return result;
}
+1
import cowsay
cowsay.cow('Hello World')
___________
< Hello World >
===========
\
\
^__^
(oo)\_______
(__)\ )\/\
||----w |
|| ||
+1
Питушня #15
#1: https://govnokod.ru/26692 https://govnokod.xyz/_26692
#2: https://govnokod.ru/26891 https://govnokod.xyz/_26891
#3: https://govnokod.ru/26893 https://govnokod.xyz/_26893
#4: https://govnokod.ru/26935 https://govnokod.xyz/_26935
#5: (vanished) https://govnokod.xyz/_26954
#6: (vanished) https://govnokod.xyz/_26956
#7: https://govnokod.ru/26964 https://govnokod.xyz/_26964
#8: https://govnokod.ru/26966 https://govnokod.xyz/_26966
#9: https://govnokod.ru/27017 https://govnokod.xyz/_27017
#10: https://govnokod.ru/27045 https://govnokod.xyz/_27045
#11: https://govnokod.ru/27058 https://govnokod.xyz/_27058
#12: https://govnokod.ru/27182 https://govnokod.xyz/_27182
#13: https://govnokod.ru/27260 https://govnokod.xyz/_27260
#14: https://govnokod.ru/27343 https://govnokod.xyz/_27343
+1
11 апреля - всемирный день анимешника
Всех поздравляем!!!
+1
// https://govnokod.ru/27340#comment621647
#include <iostream>
#include <cstdlib>
#define SPLICE(a,b) SPLICE_1(a,b)
#define SPLICE_1(a,b) SPLICE_2(a,b)
#define SPLICE_2(a,b) a##b
#define PP_ARG_N( \
_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, \
_11, _12, _13, _14, _15, _16, _17, _18, _19, _20, \
_21, _22, _23, _24, _25, _26, _27, _28, _29, _30, \
_31, _32, _33, _34, _35, _36, _37, _38, _39, _40, \
_41, _42, _43, _44, _45, _46, _47, _48, _49, _50, \
_51, _52, _53, _54, _55, _56, _57, _58, _59, _60, \
_61, _62, _63, N, ...) N
/* Note 63 is removed */
#define PP_RSEQ_N() \
62, 61, 60, \
59, 58, 57, 56, 55, 54, 53, 52, 51, 50, \
49, 48, 47, 46, 45, 44, 43, 42, 41, 40, \
39, 38, 37, 36, 35, 34, 33, 32, 31, 30, \
29, 28, 27, 26, 25, 24, 23, 22, 21, 20, \
19, 18, 17, 16, 15, 14, 13, 12, 11, 10, \
9, 8, 7, 6, 5, 4, 3, 2, 1, 0
#define PP_NARG_(...) PP_ARG_N(__VA_ARGS__)
/* Note dummy first argument _ and ##__VA_ARGS__ instead of __VA_ARGS__ */
// note: using __VA_OPT__ shit instead ##__VA_ARGS__
#define PP_NARG(...) PP_NARG_(_ __VA_OPT__(,) __VA_ARGS__, PP_RSEQ_N())
#define MK_VAR_T(type, name) \
typeof(type) name
#define TYPE_ADD_0()
#define TYPE_ADD_1(VAR) \
MK_VAR_T VAR;
#define TYPE_ADD_2(VAR, ...) \
MK_VAR_T VAR; TYPE_ADD_1(__VA_ARGS__)
#define TYPE_ADD_3(VAR, ...) \
MK_VAR_T VAR; TYPE_ADD_2(__VA_ARGS__)
#define TYPE_ADD_4(VAR, ...) \
MK_VAR_T VAR; TYPE_ADD_3(__VA_ARGS__)
#define TYPE_ADD_5(VAR, ...) \
MK_VAR_T VAR; TYPE_ADD_4(__VA_ARGS__)
#define TYPE_ADD_6(VAR, ...) \
MK_VAR_T VAR; TYPE_ADD_5(__VA_ARGS__)
#define TYPE_ADD_7(VAR, ...) \
MK_VAR_T VAR; TYPE_ADD_6(__VA_ARGS__)
#define TYPE_ADD_8(VAR, ...) \
MK_VAR_T VAR; TYPE_ADD_7(__VA_ARGS__)
#define TYPE_ADD_9(VAR, ...) \
MK_VAR_T VAR; TYPE_ADD_8(__VA_ARGS__)
#define TYPE_ADD_10(VAR, ...) \
MK_VAR_T VAR; TYPE_ADD_9(__VA_ARGS__)
#define TYPE_ADD_11(VAR, ...) \
MK_VAR_T VAR; TYPE_ADD_10(__VA_ARGS__)
#define TYPE_ADD_(N, ...) \
SPLICE(TYPE_ADD_, N)(__VA_ARGS__)
#define TYPE_ADD(...) \
TYPE_ADD_(PP_NARG(__VA_ARGS__), __VA_ARGS__)
#define REM_BRACKET(...) __VA_ARGS__
#define LAMBDA(name, vars, code) \
struct name {TYPE_ADD vars void operator()() const REM_BRACKET code}
int main()
{
LAMBDA
(
some_type_name,
((int, a), (float, b), (double, c)),
({
std::cout << "Hello, world! " << a << " " << b << " " << c << std::endl;
})
);
auto lambda = some_type_name(1, 3.14f, 0.25);
lambda();
}
Вот вам говнолямбда на препроцессоре.
+1
using System;
namespace MainNamespace
{
class MainClass
{
static string str, sep;
static void Sep()
{
int k = 0;
while (k < str.Length * 2 - 5)
{
if (sep.Length * (k + 1) > str.Length * 2 - 5)
break;
Console.Write(sep);
k++;
}
for (int l = 0; l < ((str.Length * 2 - 5) - (k * sep.Length)) ; l++)
Console.Write(sep[l]);
}
static void Main(string[] args)
{
Console.Write("str: ");
str = Console.ReadLine();
Console.Write("sep: ");
sep = Console.ReadLine();
for (int i = 0; i < str.Length-1; i++)
Console.Write(str[i] + " ");
Console.Write(str[str.Length-1] + "\n\n");
for (int j = 0; j < str.Length - 2; j++)
{
Console.Write(str[j + 1] + " ");
Sep();
Console.WriteLine(" " + str[str.Length - j - 2]);
Console.Write(" ");
if(j < str.Length - 3)
{
Sep();
Console.WriteLine(" ");
continue;
}
Console.WriteLine();
}
for (int m = str.Length-1; m >= 1; m--)
Console.Write(str[m] + " ");
Console.WriteLine(str[0]);
Console.ReadKey();
}
}
}
Переписал код http://govnokod.ru/27324 на Шарп с небольшими улучшениями.
+1
#include <stdio.h>
#include <stdlib.h>
#define SPLICE(a,b) SPLICE_1(a,b)
#define SPLICE_1(a,b) SPLICE_2(a,b)
#define SPLICE_2(a,b) a##b
#define PP_ARG_N( \
_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, \
_11, _12, _13, _14, _15, _16, _17, _18, _19, _20, \
_21, _22, _23, _24, _25, _26, _27, _28, _29, _30, \
_31, _32, _33, _34, _35, _36, _37, _38, _39, _40, \
_41, _42, _43, _44, _45, _46, _47, _48, _49, _50, \
_51, _52, _53, _54, _55, _56, _57, _58, _59, _60, \
_61, _62, _63, N, ...) N
/* Note 63 is removed */
#define PP_RSEQ_N() \
62, 61, 60, \
59, 58, 57, 56, 55, 54, 53, 52, 51, 50, \
49, 48, 47, 46, 45, 44, 43, 42, 41, 40, \
39, 38, 37, 36, 35, 34, 33, 32, 31, 30, \
29, 28, 27, 26, 25, 24, 23, 22, 21, 20, \
19, 18, 17, 16, 15, 14, 13, 12, 11, 10, \
9, 8, 7, 6, 5, 4, 3, 2, 1, 0
#define PP_NARG_(...) PP_ARG_N(__VA_ARGS__)
/* Note dummy first argument _ and ##__VA_ARGS__ instead of __VA_ARGS__ */
#define PP_NARG(...) PP_NARG_(_, ##__VA_ARGS__, PP_RSEQ_N())
#define FIND_NONNULL_1(RES) \
((RES = (char *)(NULL)))
#define FIND_NONNULL_2(RES, VAR) \
((RES = (char *)(VAR)))
#define FIND_NONNULL_3(RES, VAR, ...) \
(((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_2(RES,__VA_ARGS__))
#define FIND_NONNULL_4(RES, VAR, ...) \
(((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_3(RES,__VA_ARGS__))
#define FIND_NONNULL_5(RES, VAR, ...) \
(((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_4(RES,__VA_ARGS__))
#define FIND_NONNULL_6(RES, VAR, ...) \
(((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_5(RES,__VA_ARGS__))
#define FIND_NONNULL_7(RES, VAR, ...) \
(((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_6(RES,__VA_ARGS__))
#define FIND_NONNULL_8(RES, VAR, ...) \
(((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_7(RES,__VA_ARGS__))
#define FIND_NONNULL_9(RES, VAR, ...) \
(((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_8(RES,__VA_ARGS__))
#define FIND_NONNULL_10(RES, VAR, ...) \
(((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_9(RES,__VA_ARGS__))
#define FIND_NONNULL_11(RES, VAR, ...) \
(((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_10(RES,__VA_ARGS__))
#define FIND_NONNULL_12(RES, VAR, ...) \
(((RES = (char *)(VAR)) != NULL)?RES:FIND_NONNULL_11(RES,__VA_ARGS__))
// etc ...
#define FIND_NONNULLS_(N, ...) \
SPLICE(FIND_NONNULL_, N)(__VA_ARGS__)
#define FIND_NONNULLS(...) \
({ \
char *FIND_NONNULLS; \
FIND_NONNULLS_(PP_NARG(FIND_NONNULLS, __VA_ARGS__), FIND_NONNULLS, __VA_ARGS__); \
FIND_NONNULLS; \
})
char *side_effect_null(void)
{
printf("!!null!!\n");
return NULL;
}
char *side_effect_test(void)
{
printf("!!test!!\n");
return "test";
}
int main(void)
{
printf( "result:%s\n", FIND_NONNULLS(0,side_effect_null(),0,side_effect_test(),0,0,side_effect_test(),"govno", side_effect_test()) );
return EXIT_SUCCESS;
}
Это типа как short-circuit evaluation чтоб по цепочке хрень возвращающую строку вызывать, и там те функции хуйпойми сколько аргументов могут принимать (но там может быть константа, тогда естественно нихрена не надо вызывать) пока оно не вернет не-NULL. Как только вернуло не-NULL то вернуть это и дальше ничего не вызывать, а то там сайд эффекты всякие ненужные будут. А если не-NULL так и не нашло, вернуть NULL
+1
void printParser(const wchar_t *fileName, const wchar_t *str, boolean showLineCharPos)
{
ts::Parser parser;
auto sourceFile = parser.parseSourceFile(fileName, str, ScriptTarget::Latest);
ts::FuncT<> visitNode;
ts::ArrayFuncT<> visitArray;
auto intent = 0;
visitNode = [&](ts::Node child) -> ts::Node {
for (auto i = 0; i < intent; i++)
{
std::cout << "\t";
}
std::cout << "Node: " << wtoc(parser.syntaxKindString(child).c_str()) << " @ [ " << child->pos << " - " << child->_end << " ]" << std::endl;
intent++;
ts::forEachChild(child, visitNode, visitArray);
intent--;
return undefined;
};
visitArray = [&](ts::NodeArray<ts::Node> array) -> ts::Node {
for (auto node : array)
{
visitNode(node);
}
return undefined;
};
auto result = ts::forEachChild(sourceFile.as<ts::Node>(), visitNode, visitArray);
}
спортировал TypeScript парсер в C++ и ахренел от обьема работы :)
+1
def ForQueryInAddr(query, addr):
global listed, primalsource
print("Searcing in: "+addr)
html = requests.get(addr,proxies=proxies).text
if (query.lower() in html.lower()):
print("==============================================")
print("Query found in: "+addr)
print("==============================================")
if ("<html>" in html or "<head>" in html):
data = PyQuery(html)
links = data('a')
for link in links:
ahref = link.attrib['href']
#print("Found: "+ahref)
if (ahref not in listed):
if (ahref[0].lower() == "h"):
if (primalsource in ahref):
if (ahref[-3:].lower() not in filetypes and ahref[-4:].lower() not in filetypes and ahref[-5:].lower() not in filetypes):
listed.append(ahref)
ForQueryInAddr(query, ahref)
https://github.com/Dev1lroot/OnionSearch/blob/master/main.py