@Override
	public DataTypeComponent getDefinedComponentAtOrAfterOffset(int offset) {
		lock.acquire();
		try {
			checkIsValid();
			if (offset > structLength || offset < 0) {
				return null;
			}
			int index = Collections.binarySearch(components, Integer.valueOf(offset),
				OffsetComparator.INSTANCE);
			if (index >= 0) {
				DataTypeComponent dtc = components.get(index);
				index = backupToFirstComponentContainingOffset(index, offset);
				dtc = components.get(index);
				return dtc;
			}
			index = -index - 1;
			if (index < components.size()) {
				return components.get(index);
			}
			return null;
		}
		finally {
			lock.release();
		}
	}
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/database/data/StructureDB.java