@Override
	public void clearAtOffset(int offset) {
		if (offset < 0) {
			throw new IllegalArgumentException("Offset cannot be negative.");
		}
		if (offset > structLength) {
			return;
		}

		int index = Collections.binarySearch(components, Integer.valueOf(offset),
			OffsetComparator.INSTANCE);
		if (index < 0) {
			return;
		}

		// clear all components containing offset working backward from last such component
		index = advanceToLastComponentContainingOffset(index, offset);
		DataTypeComponentImpl dtc = components.get(index);
		while (dtc.containsOffset(offset)) {
			doDeleteWithComponentShift(index, true); // updates timestamp
			if (--index < 0) {
				break;
			}
			dtc = components.get(index);
		}

		repack(false);
		notifySizeChanged();
	}
Advance from specified defined-component index to the last component which contains the specified offset.
@param index any defined component index which contains offset
@param offset offset within structure
@return index of last defined component containing specific offset.
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/data/StructureDataType.java