nstrct/nstrct-ruby

View on GitHub
lib/nstrct/argument.rb

Summary

Maintainability
B
6 hrs
Test Coverage

Method pack_value has 32 lines of code (exceeds 25 allowed). Consider refactoring.
Open

    def pack_value(datatype, value, data)
      case datatype
      when :boolean
        data += [to_boolean(value) ? 1 : 0].pack('C')
      when :int8
Severity: Minor
Found in lib/nstrct/argument.rb - About 1 hr to fix

    Method parse_value has 31 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

        def self.parse_value(datatype, data)
          case datatype
          when :boolean
            return data.slice!(0).unpack('C')[0] == 1
          when :int8
    Severity: Minor
    Found in lib/nstrct/argument.rb - About 1 hr to fix

      Avoid too many return statements within this method.
      Open

              return length > 0 ? data.slice!(0..length - 1) : ''
      Severity: Major
      Found in lib/nstrct/argument.rb - About 30 mins to fix

        Avoid too many return statements within this method.
        Open

                return data.slice!(0..1).unpack('S>')[0]
        Severity: Major
        Found in lib/nstrct/argument.rb - About 30 mins to fix

          Avoid too many return statements within this method.
          Open

                  return data.slice!(0..3).unpack('L>')[0]
          Severity: Major
          Found in lib/nstrct/argument.rb - About 30 mins to fix

            Avoid too many return statements within this method.
            Open

                    return data.slice!(0..7).unpack('Q>')[0]
            Severity: Major
            Found in lib/nstrct/argument.rb - About 30 mins to fix

              Avoid too many return statements within this method.
              Open

                      return data.slice!(0).unpack('C')[0]
              Severity: Major
              Found in lib/nstrct/argument.rb - About 30 mins to fix

                Avoid too many return statements within this method.
                Open

                        return data.slice!(0..7).unpack('G')[0]
                Severity: Major
                Found in lib/nstrct/argument.rb - About 30 mins to fix

                  Avoid too many return statements within this method.
                  Open

                          return data.slice!(0..7).unpack('q>')[0]
                  Severity: Major
                  Found in lib/nstrct/argument.rb - About 30 mins to fix

                    Avoid too many return statements within this method.
                    Open

                            return data.slice!(0..3).unpack('g')[0]
                    Severity: Major
                    Found in lib/nstrct/argument.rb - About 30 mins to fix

                      There are no issues that match your filters.

                      Category
                      Status