- 1
- 2
- 3
- 4
- 5
- 6
public int hashCode() {
HashCode h = new HashCode();
h.addValue(mFirst);
h.addValue(mSecond);
return h.hashCode();
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
public int hashCode() {
HashCode h = new HashCode();
h.addValue(mFirst);
h.addValue(mSecond);
return h.hashCode();
}
Наалоцируем даже там, где нужны только примитивы
https://github.com/Netflix/netflix-commons/blob/519178a/netflix-commons-util/src/main/java/com/netflix/util/Pair.java#L119-L124
0
During handling of the above exception, another exception occurred
А бывает "Исключение возникло при обработке исключения, которое возникло при попытке обработать исключение"?
0
Электрика / электроника #8
#1: https://govnokod.ru/25437 https://govnokod.xyz/_25437
#2: https://govnokod.ru/25820 https://govnokod.xyz/_25820
#3: https://govnokod.ru/26570 https://govnokod.xyz/_26570
#4: https://govnokod.ru/27622 https://govnokod.xyz/_27622
#5: https://govnokod.ru/27741 https://govnokod.xyz/_27741
#6: https://govnokod.ru/28191 https://govnokod.xyz/_28191
#7: https://govnokod.ru/28630 https://govnokod.xyz/_28630
0
SELECT last_name,
o.product,
p.price,
c.category
FROM orders o
JOIN prices p ON p.product = o.product
JOIN category c ON p.price >= c.limit_1 AND p.price < c.limit_2
Сикель-обоссилий.
0
nonisolated
private static func mapRules(firstName: String, surname: String, middleName: String) -> Bool {
let mainRule = firstName.isNotEmpty &&
surname.isNotEmpty &&
firstName.isValidPersonalData &&
surname.isValidPersonalData
let additionalRule = middleName.isNotEmpty &&
middleName.isValidPersonalData
return additionalRule ? mainRule && additionalRule : mainRule
}
extension String {
var isValidPersonalData: Bool {
let regex = "^(?!\\s)[a-zA-Zа-яА-ЯёЁ\\s'-.]*[a-zA-Zа-яА-ЯёЁ][a-zA-Zа-яА-ЯёЁ\\s'-.]*$"
return NSPredicate(format: "SELF MATCHES %@", regex).evaluate(with: self)
}
}
0
https://github.com/HermanKirshin/MainBrainfuck/blob/main/_.cs
"Если кому интересно - предлагаю угадать что делает этот код" (Ц)
0
<?php
function filter($var, $type)
{
switch ($type[0])
{
case 1: $var = 'intval('.$var.')';
break;
case 2: $var = 'trim('.$var.')';
break;
}
switch ($type[1])
{
case 1: $var = 'intval('.$var.')';
break;
case 2: $var = 'trim('.$var.')';
break;
}
return $var;
}
$var3 = 233;
echo filter($var3, [1,2]);
?>
Шедевр:
https://php.ru/forum/threads/nuzhna-pomosch-po-kodu.101533
+1
Приватный дневник-тред, который никто не прочтёт, чтобы писать сюда всякие секреты.
Это место для тех, кто устал от публичности социальных сетей.
Здесь можно взять любой логин, не указывая настоящего имени,
вести свой дневник, закрыв его от части или всего виртуального
мира. До 75% записей на сайте подзамочные — для избранных
читателей. Можно писать в тред, который кроме вас вообще
никто не прочтет.
+1
// https://github.com/torvalds/linux/blob/b6dad5178ceaf23f369c3711062ce1f2afc33644/rust/alloc/alloc.rs#L376
pub const fn handle_alloc_error(layout: Layout) -> ! {
const fn ct_error(_: Layout) -> ! {
panic!("allocation failed");
}
fn rt_error(layout: Layout) -> ! {
unsafe {
__rust_alloc_error_handler(layout.size(), layout.align());
}
}
unsafe { core::intrinsics::const_eval_select((layout,), ct_error, rt_error) }
}
// https://github.com/torvalds/linux/blob/b6dad5178ceaf23f369c3711062ce1f2afc33644/rust/kernel/lib.rs#L96-L103
fn panic(info: &core::panic::PanicInfo<'_>) -> ! {
pr_emerg!("{}\n", info);
// SAFETY: FFI call.
unsafe { bindings::BUG() };
// Bindgen currently does not recognize `__noreturn` so `BUG` returns `()`
// instead of `!`. See <https://github.com/rust-lang/rust-bindgen/issues/2094>.
loop {}
}
// https://github.com/torvalds/linux/blob/master/include/asm-generic/bug.h#L51-L68
/*
* Don't use BUG() or BUG_ON() unless there's really no way out; one
* example might be detecting data structure corruption in the middle
* of an operation that can't be backed out of. If the (sub)system
* can somehow continue operating, perhaps with reduced functionality,
* it's probably not BUG-worthy.
*
* If you're tempted to BUG(), think again: is completely giving up
* really the *only* solution? There are usually better options, where
* users don't need to reboot ASAP and can mostly shut down cleanly.
*/
#ifndef HAVE_ARCH_BUG
#define BUG() do { \
printk("BUG: failure at %s:%d/%s()!\n", __FILE__, __LINE__, __func__); \
barrier_before_unreachable(); \
panic("BUG!"); \
} while (0)
#endif
О том, как в ядре Linux говнораст обрабатывает ошибку аллокации
0
struct node
{
void *data;
struct node *head;
struct node *tail;
};
struct list
{
int size;
struct node *head;
struct node *tail;
void *(*alloc_node)(size_t);
void *(*alloc_data)(size_t);
void (*free_node)(void *);
void (*free_data)(void *);
};
typedef struct node node_t;
typedef struct list list_t;
void list_init(list_t *list)
{
list->size = 0;
list->head = (node_t*)list;
list->tail = (node_t*)list;
list->alloc_node = &malloc;
list->alloc_data = &malloc;
list->free_node = &free;
list->free_data = &free;
}
void list_link(struct node *head, struct node *tail)
{
head->tail = tail;
tail->head = head;
}
void *push_head(list_t *list, node_t *head, size_t size)
{
node_t *node = list->alloc_node(sizeof(node_t));
void *data = list->alloc_data(size);
node->data = data;
list_link(node, head->tail);
list_link(head, node);
list->size++;
return data;
}
void *push_tail(list_t *list, node_t *tail, size_t size)
{
node_t *node = list->alloc_node(sizeof(node_t));
void *data = list->alloc_data(size);
node->data = data;
list_link(tail->head, node);
list_link(node, tail);
list->size++;
return data;
}
void pop(list_t *list, node_t *node)
{
list_link(node->head, node->tail);
list->size--;
void *data = node->data;
list->free_node(node);
list->free_data(data);
}
void print(struct list *list)
{
printf("\n====\n");
printf("size: %ld \n", list->size);
int i = 0;
for(node_t *node = list->head; node != list; node = node->head)
{
printf("index: %ld number: %ld \n", i, *(int*)(node->data));
i++;
}
}
struct list lst;
list_init(&lst);
print(&lst);
void *data;
data = push_tail(&lst, lst.tail, 4);
*(int*)data = 1;
итак скажите про название функций про то каких функций не хватает + alloc и free поля не трогать это мне нужно ТОЛЬКО НЕ советуйте перейти на с++ и использовать чтото другое(std::list)