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

    Всего: 116

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

    −146

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    sub new {
        my $self = shift;
        return $self if ref $self;
    
        unless (ref $self) {

    SOAP::Lite http://cpansearch.perl.org/src/PHRED/SOAP-Lite-0.716/lib/SOAP/Lite.pm

    package SOAP::Server;

    Elvenfighter, 04 Июня 2013

    Комментарии (123)
  3. Perl / Говнокод #13045

    −158

    1. 1
    2. 2
    3. 3
    4. 4
    $root->SOAP::Data::name eq 'schema' ? do { # add <types> element if there is no one
            $s->set_value($s->value, $self->deserializer->deserialize('<types></types>')->root) unless $s->types;
            $s->types->set_value($s->types->value, $root) } :
            die "Don't know what to do with '@{[$root->SOAP::Data::name]}' in schema imported from '$location'\n";

    SOAP::Lite, епт. Весь модуль такой

    http://search.cpan.org/~phred/SOAP-Lite-0.716/lib/SOAP/Lite.pm

    Elvenfighter, 24 Мая 2013

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

    −103

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    sub exdef {
        my ($hash, $key) = @_;
    
        if (exists $hash->{$key} && defined $hash->{$key}) {
            return 1;
        }
    
        return 0;
    }

    No comments.

    BTW.
    http://perldoc.perl.org/functions/exists.html
    http://perldoc.perl.org/functions/defined.html

    Elvenfighter, 08 Мая 2013

    Комментарии (32)
  5. C++ / Говнокод #12852

    +16

    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
    #include <iostream>
    using namespace std;
     
    class Function {
    public:
        Function() {
            cout << "Function created!" << endl;
        }  
    };
     
    void Function() {
        cout << "Function called" << endl;
    }
     
    int main() {
        //class Function f;
        class Function *f = new class Function;
        Function();
        
        return 0; 
    }

    Бодаемся с семантическим анализатором.

    Elvenfighter, 05 Апреля 2013

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

    −116

    1. 1
    sprintf "%d-%02d-%02d", map { $$_[5]+1900, $$_[4]+1, $$_[3]+1 } [localtime];

    Даты. Perl. Классика.

    http://perldoc.perl.org/POSIX.html#strftime

    Elvenfighter, 01 Апреля 2013

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

    −84

    1. 1
    use constant MAX_INT => 4294967295;

    Code hard.

    P.S. perl -MPOSIX -we 'print INT_MAX'

    Elvenfighter, 17 Марта 2013

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

    −133

    1. 1
    yum remove python

    Еще один способ "отпилить ветку под собой"
    http://www.linux.org.ru/forum/admin/8946020

    Elvenfighter, 12 Марта 2013

    Комментарии (53)
  9. Perl / Говнокод #12703

    −153

    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
    #!/usr/bin/perl
    
    use strict;
    use warnings;
    use Data::Dumper;
     
    my $data = [
        { one => 1, two => 2 },
        { two => 2, three => 3 },
        { three => 3, four => 4 }
    ];
     
    my @datakeys = keys %{{ map { %{ $_ } } @{ $data } }};
     
    print Dumper({ 'datakeys' => \@datakeys });

    Надо было найти уникальные ключи из массива хешей. Лучше ничего в голову не пришло.
    http://ideone.com/Wwg0B5

    Elvenfighter, 08 Марта 2013

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

    +23

    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
    #include <iostream>
    using namespace std;
     
    class Class {
    public:
        explicit Class(int a) : m_int(a) {}
        
        int get() const { return m_int; }
        
        void swapThis(int a) {
            delete this;
            Class **thisptr = reinterpret_cast<Class**>(&a);
            thisptr--;
            *thisptr = new Class(a);
            cout << "this: " << this << endl
                 << "that: " << *thisptr << endl;
        }
    private:
        int m_int;
    };
     
    int main() {
        Class *s = new Class(13);
        s->swapThis(42);
        cout << s->get() << endl;
        delete s;
        
        return 0;
    }

    Что творит хакингкостылинг + инлайн методы.
    http://ideone.com/5Kyitw

    Elvenfighter, 29 Декабря 2012

    Комментарии (23)
  11. Perl / Говнокод #12371

    −121

    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
    # ...
           my @suitable =
            sort {
                my $cmp = 0;
    
                for my $attr (qw(_customer_class _environment _authorship)) {
                    if (defined($a->{$attr}) && defined($b->{$attr})) {
    
                        if ($attr eq '_authorship') {
                            if ($a->{$attr} ne TEMPLATE_AUTHORSHIP_SYSTEM) {
                                $cmp = -1; last;
                            }
                            else {
                                $cmp = 1; last;
                            }
                        }
                        else {
                            next;
                        }
                    }
                    elsif (defined($a->{$attr})) {
                        $cmp = -1; last;
                    }
                    elsif (defined($b->{$attr})) {
                        $cmp = 1; last;
                    }
                    else {
                        next;
                    }
                }
    
                return $cmp;
            }
            grep {
                (!defined($_->{_customer_class}) || $_->{_customer_class} == $params{customer_class})
                &&
                (!defined($_->{_environment}) || $_->{_environment} == $params{environment})
            } @found;

    Just Another Perl Cracker

    Elvenfighter, 27 Декабря 2012

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