Showing 1,379 of 1,379 total issues
Avoid deeply nested control flow statements. Open
Open
if upper_bound > lower_bound
# Combine bytes into a FixNum
temp_data[1..temp_upper].each_byte do |temp_value|
temp = temp << 8
temp = temp + temp_value
Avoid deeply nested control flow statements. Open
Open
if endianness == HOST_ENDIANNESS
packed = values.pack(PACK_NATIVE_64_BIT_UINT_ARRAY)
else # endianness != HOST_ENDIANNESS
packed = values.pack(PACK_NATIVE_64_BIT_UINT_ARRAY)
self.byte_swap_buffer!(packed, 8)
Avoid deeply nested control flow statements. Open
Open
if value
item.default = value
else
raise "Unknown DEFAULT #{@defaults[index]} for item #{item.name}. Valid states are #{item.states.keys.join(', ')}."
end
Avoid deeply nested control flow statements. Open
Open
if data_type == :INT
###########################################################
# Handle byte-aligned 8, 16, 32, and 64 bit :INT
###########################################################
Avoid deeply nested control flow statements. Open
Open
if endianness == :LITTLE_ENDIAN
# Bitoffset always refers to the most significant bit of a bitfield
num_bytes = (((bit_offset % 8) + bit_size - 1) / 8) + 1
upper_bound = bit_offset / 8
lower_bound = upper_bound - num_bytes + 1
Method initialize
has 6 arguments (exceeds 4 allowed). Consider refactoring. Open
Open
def initialize(hostname, write_port, read_port, write_timeout, read_timeout, connect_timeout = 5.0)
Avoid deeply nested control flow statements. Open
Open
if endianness == HOST_ENDIANNESS
packed = values.pack(PACK_NATIVE_16_BIT_INT_ARRAY)
else # endianness != HOST_ENDIANNESS
packed = values.pack(PACK_NATIVE_16_BIT_INT_ARRAY)
self.byte_swap_buffer!(packed, 2)
Avoid deeply nested control flow statements. Open
Open
if endianness == HOST_ENDIANNESS
value = buffer[lower_bound..upper_bound].unpack(PACK_NATIVE_64_BIT_UINT_ARRAY)
else # endianness != HOST_ENDIANNESS
temp = self.byte_swap_buffer(buffer[lower_bound..upper_bound], 8)
value = temp.to_s.unpack(PACK_NATIVE_64_BIT_UINT_ARRAY)
Avoid deeply nested control flow statements. Open
Open
if endianness == :BIG_ENDIAN
value = buffer[lower_bound..upper_bound].unpack(PACK_BIG_ENDIAN_16_BIT_UINT_ARRAY)
else # endianness == :LITTLE_ENDIAN
value = buffer[lower_bound..upper_bound].unpack(PACK_LITTLE_ENDIAN_16_BIT_UINT_ARRAY)
end
Avoid deeply nested control flow statements. Open
Open
if endianness == :BIG_ENDIAN
value = buffer[lower_bound..upper_bound].unpack(PACK_BIG_ENDIAN_32_BIT_UINT_ARRAY)
else # endianness == :LITTLE_ENDIAN
value = buffer[lower_bound..upper_bound].unpack(PACK_LITTLE_ENDIAN_32_BIT_UINT_ARRAY)
end
Avoid deeply nested control flow statements. Open
Open
if endianness == HOST_ENDIANNESS
packed = values.pack(PACK_NATIVE_32_BIT_INT_ARRAY)
else # endianness != HOST_ENDIANNESS
packed = values.pack(PACK_NATIVE_32_BIT_INT_ARRAY)
self.byte_swap_buffer!(packed, 4)
Avoid deeply nested control flow statements. Open
Open
if endianness == HOST_ENDIANNESS
value = buffer[lower_bound..upper_bound].unpack(PACK_NATIVE_64_BIT_INT_ARRAY)
else # endianness != HOST_ENDIANNESS
temp = self.byte_swap_buffer(buffer[lower_bound..upper_bound], 8)
value = temp.to_s.unpack(PACK_NATIVE_64_BIT_INT_ARRAY)
Avoid deeply nested control flow statements. Open
Open
if parent == previous_parent
# Same Parent - Respawn parent
@changed_microservices[parent] = @microservices[parent] if @microservices[parent] and @previous_microservices[parent]
elsif parent and previous_parent
# Parent changed - Respawn both parents
Avoid deeply nested control flow statements. Open
Open
packet_name_length -= OPENC3_ID_FIXED_SIZE if id
Avoid deeply nested control flow statements. Open
Open
elsif flags & OPENC3_ENTRY_TYPE_MASK == OPENC3_KEY_MAP_ENTRY_TYPE_MASK
packet_index = entry[2..3].unpack('n')[0]
key_map_length = length - OPENC3_PRIMARY_FIXED_SIZE - OPENC3_KEY_MAP_SECONDARY_FIXED_SIZE
if cbor
key_map = CBOR.decode(entry[4..(key_map_length + 3)])
Method initialize
has 6 arguments (exceeds 4 allowed). Consider refactoring. Open
Open
log_name,
log_type,
cycle_time = 600, # 10 minutes, matches time in target_model
cycle_size = 50_000_000, # 50MB, matches size in target_model
cycle_hour = nil,
Avoid deeply nested control flow statements. Open
Open
if byte_aligned(bit_offset)
case bit_size
when 32
if endianness == :BIG_ENDIAN
return buffer[lower_bound..upper_bound].unpack(PACK_BIG_ENDIAN_32_BIT_FLOAT)[0]
Avoid deeply nested control flow statements. Open
Open
if data_type == :INT
# Convert to negative if necessary
if (bit_size > 1) && (temp[bit_size - 1] == 1)
temp = -((1 << bit_size) - temp)
end
Avoid deeply nested control flow statements. Open
Open
if (lower_bound + end_bytes) > buffer.length
raise_buffer_error(:write, buffer, data_type, given_bit_offset, given_bit_size)
end
Avoid deeply nested control flow statements. Open
Open
unless target_name
# There was a bug in the PacketLogWriter before version 5.6.0 that stored an invalid target_index
# Attempt to work around by reading the target_name from the filename
filename_split = @filename.to_s.split('__')
target_name = filename_split[3]