1. Список говнокодов пользователя Elvenfighter

    Всего: 116

  2. Perl / Говнокод #19597

    −13

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    package Whatever;
    
    use strict;
    use warnings;
    use Data::Dumper;
    
    use constant {
        PASSWORD            => 'password',
        PROFILE             => 'profile',
        ROOT_USER_DN        => 'bind-dn',
    };
    
    sub _export_data {
        my ($self, $data) = @_;
        # внутренняя логика не важна: просто напечатаем что получили
        print Dumper($data);
    }
    
    sub method {
       my ($self) = @_;
    
    # <govnokod location="here">
       $self->_export_data({
          map { __PACKAGE__->$_ => $self->{'_' . lc $_} } qw(PASSWORD PROFILE ROOT_USER_DN)
       });
    # </govnokod>
    }
    
    package main;
    
    # быстро создадим обьект (чтоб не копировать конструктор)
    my $obj = bless {
        _password     => 'foo',
        _profile      => 'bar/baz',
        _root_user_dn => 'cn=root,dc=example,dc=com'
    } => 'Whatever';
    
    $obj->method();

    Захотелось вы**нуться: експортнуть несколько значений внутри обьекта по константам с такими же названиями...

    Elvenfighter, 09 Марта 2016

    Комментарии (25)
  3. C++ / Говнокод #19206

    +2

    1. 1
    2. 2
    3. 3
    4. 4
    auto id = qobject_cast<QStandardItemModel *>(ui->cbxDevice->model())
                            ->item(ui->cbxDevice->currentIndex(),
                                   RemoteDev::Constants::DEV_ID_COLUMN)
                            ->data(RemoteDev::Constants::DEV_ID_ROLE);

    Q(Styled)ItemDelegate::setModelData, достаем данные из модели комбобокса: другая колонка, кастомная роль. Жиза :(

    Elvenfighter, 20 Декабря 2015

    Комментарии (1)
  4. Perl / Говнокод #18761

    −46

    1. 1
    2. 2
    3. 3
    open(my $fh, '<', $file);
    my @lines = split "\n", do { local $/ = undef; <$fh> };
    close($fh);

    Безсмысленная безпощадность. Кто знает, что такое slurp a file в Perl, тот поймёт. Для остальных -- спойлер ниже.
    my @lines = <$fh>;

    Elvenfighter, 25 Сентября 2015

    Комментарии (39)
  5. Си / Говнокод #18563

    +1000

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    int cutNCountLt3(char *in, char *out, long min) {
        int lt3 = 0;
        char *i = in, *j = in, *k = out;
    
        while (*j && *i) {
            j = i;
            while (*j != ' ' && *j)
                *k++ = *j++;
    
            *k++ = *j;
    
            int len = j - i;
            lt3 += len < 3;
    
            if (len < min)
                *(k -= len + 1) = '\0';
    
            i = j + 1;
        }
    
        return lt3;
    }

    К #9911
    А конкретнее http://govnokod.ru/9911#comment295215

    После нескольких ревизий в комментах, подумал, что наложить здесь будет лучше... Прошу любить, но не жаловать

    Elvenfighter, 03 Августа 2015

    Комментарии (25)
  6. Си / Говнокод #18535

    +973

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    /* */
            int fooBar() {
                /* do something */
    
    /* - */     return NULL;
    /* + */     return 0ULL;
            }

    > src/foobar.c:42:3: warning: return makes integer from pointer without a cast
    > return NULL;

    П О Ч И Н Е Н О

    #17766

    Elvenfighter, 26 Июля 2015

    Комментарии (12)
  7. Perl / Говнокод #18534

    −227

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    use strict;
    use warnings;
     
    my ($i, $j) = (42, 13);
     
    my $max = [ $i => $j ]->[ $i <= $j ];
     
    print "max: $max\n";

    Вот-так вот: http://ideone.com/2Rd3Mr

    // Вроди где-то в PBP этот пример даже есть

    #13520

    Elvenfighter, 26 Июля 2015

    Комментарии (23)
  8. bash / Говнокод #18532

    −704

    1. 1
    test "$(whoami)" != 'root' && (echo you are using a non-privileged account; exit 1)

    Real Programmers
    Most programmers will prefer to use the test built-in command, which is equivalent to using square brackets for comparison, like this

    http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_07_01.html#sect_07_01_02_03

    Вот такие они, real programmers.
    Подсказка: Круглые скобки в шелле запускают саб-шелл

    Elvenfighter, 26 Июля 2015

    Комментарии (74)
  9. bash / Говнокод #18531

    −392

    1. 1
    test "$(whoami)" != 'root' && (echo you are using a non-privileged account; exit 1)

    Real Programmers
    Most programmers will prefer to use the test built-in command, which is equivalent to using square brackets for comparison, like this

    http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_07_01.html#sect_07_01_02_03

    Вот такие они, real programmers.
    Подсказка: Круглые скобки в шелле запускают саб-шелл

    Elvenfighter, 25 Июля 2015

    Комментарии (20)
  10. bash / Говнокод #18529

    −94

    1. 1
    test "$(whoami)" != 'root' && (echo you are using a non-privileged account; exit 1)

    Real Programmers
    Most programmers will prefer to use the test built-in command, which is equivalent to using square brackets for comparison, like this

    http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_07_01.html#sect_07_01_02_03

    Вот такие они, real programmers.
    Подсказка: Круглые скобки в шелле запускают саб-шелл

    Elvenfighter, 25 Июля 2015

    Комментарии (2)
  11. bash / Говнокод #18527

    −81

    1. 1
    test "$(whoami)" != 'root' && (echo you are using a non-privileged account; exit 1)

    Real Programmers
    Most programmers will prefer to use the test built-in command, which is equivalent to using square brackets for comparison, like this

    http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_07_01.html#sect_07_01_02_03

    Вот такие они, real programmers.
    Подсказка: Круглые скобки в шелле запускают саб-шелл

    Elvenfighter, 24 Июля 2015

    Комментарии (28)