- 1
{"Windows 2013", NULL, 0, ACPI_OSI_WIN_8}, /* Windows 8.1 and Server 2012 R2 - Added 01/2014 */
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+145
{"Windows 2013", NULL, 0, ACPI_OSI_WIN_8}, /* Windows 8.1 and Server 2012 R2 - Added 01/2014 */
3 вечера ёбли... 20+ собранных ядер во время бисекта и экспериментов...
А всё из-за пидорасов из acer, которые воткнули в свою прошивку какой-то костыль для windows 8.1, который ломал все свежие ядра линухи (а если не совсем ломал - то не работал тачпад). И из-за пидорасов из других вендоров, которые вынудили линукс прикидываться свежей виндой.
+144
public void checkApply()
{
if (((((Parent as StackPanel).Parent as Grid).Parent as ToolControlPanel).Parent as ToolControl).Parent != null)
{
var w = (((((((((Parent as StackPanel).Parent as Grid).Parent as ToolControlPanel).Parent as ToolControl).Parent as DockPanel).Parent as DockPanel).Parent as DockPanel).Parent as Window).Owner as MainWindow);
if (w != null)
w.EnableApplyNext();
}
}
промолчу... ибо и так все ясно... :)
+142
void AttachToParser(Parser* pParser)
{
parser=pParser;
static const char* const typeNames[]={"ShaderInterface", "ShaderModule", "ShaderModuleType", "ShaderModulePattern", "ShaderTemplate"};
typedef void (ShaderGeneratorParser::* StructureProcessor)();
static StructureProcessor processors[]={&ShaderGeneratorParser::ProcessShaderInterface, &ShaderGeneratorParser::ProcessShaderModule,
&ShaderGeneratorParser::ProcessShaderModuleType, &ShaderGeneratorParser::ProcessShaderModulePattern, &ShaderGeneratorParser::ProcessShaderTemplate};
for(uint i=0; i<numof(processors); i++)
{
auto processor=processors[i];
ShaderGeneratorParser mycopy=*this;
parser->DeclarationBlockParsers.Append(typeNames[i], [mycopy, processor]() mutable {(mycopy.*processor)();});
}
}
Делаю парсер конфигов для своего игрового движка. Он готов наверное всего на 10% и представлял собой один класс, который уже разросся. Стало неудобно по нему передвигаться. Решил разбить парсер на модули. Это код того, как один из модулей цепляется к основному классу парсера.
Этот модуль умеет парсить 5 разных блоков, объединённых общим назначением - сборка шейдеров из модулей. За каждый тип блоков отвечает своя функция. Об этом функция и сообщает основному классу.
Цель такая, чтобы модуль работал даже после удаления самого экземпляра. Для этого пришлось пропихнуть копию экземпляра внутрь std::function. Более нормального способа, чем через лямбду с замканием, я не нашёл.
+171
мне кажется, до полноценности php не хватает несколько функций:
alias() - заменяет один код другим кодом при парсинге,
var_history() - возвращает историю значений переменной в виде массива,
function_history() - возвращает массив аргументов, которые передавались функции,
var() - устанавливает и изменяет значение и тип переменной.
С тостера
+145
foreach ($news as $post) {
if (isset($post->important)) {
if($post->important == 1)
{
$import = $post;
break;
}
}
$import = 0;
}
if (!is_integer($import)) // ...
+142
return ("" + ((10 - (acn = "229" + acn)
.Select((c, с) => (int)(c - '0') * (с % 2 + 1))
.Sum(c => c / 10 + c % 10) % 10) % 10)).Insert(0, acn);
+145
public string define(string content)
{
int till;
char[] CharArr = content.ToCharArray();
for (int i = 0; i < CharArr.Length; i++)
{
if (CharArr[i] == 'i')
{
till = i;
}
}
string Re = content.Substring(0,till);
return Re;
}
С тостера. Я рыдал.
+145
protected virtual void OnDisconnected()
{
DispatcherHelper.CheckBeginInvokeOnUI(() =>
{
...
Cameras.ToList().Clear();
Meltings.ToList().Clear();
Spans.ToList().Clear();
...
});
}
Очищаем коллекции с данными, привязанные на списковые контролы UI. Доступ к свойствам Cameras, Meltings, Spans только через IEnumerable<>. Как же их очистить?
+144
public static class BoolExt
{
public static string ToYesNoString(this bool value)
{
return value ? "Да" : "Нет";
}
}
+143
public static bool IsEmpty(this string input)
{
return String.IsNullOrEmpty(input);
}
А почему бы и да?