mirror of
https://github.com/metabarcoding/obitools4.git
synced 2026-04-30 03:50:39 +00:00
⬆️ version bump to v4.5
- Update obioptions.Version from "Release 4.4.29" to "/v/ Release v5" - Update version.txt from 4.29 → .30 (automated by Makefile)
This commit is contained in:
@@ -0,0 +1,22 @@
|
||||
## `ReadEmptyFile` Function — Semantic Description
|
||||
|
||||
- **Package**: `obiformats`, part of the OBITools4 ecosystem for biological sequence handling.
|
||||
- **Purpose**: Creates and returns an *empty*, closed iterator over biosequences (`IBioSequence`).
|
||||
- **Signature**:
|
||||
`func ReadEmptyFile(options ...WithOption) (obiiter.IBioSequence, error)`
|
||||
- **Input**: Accepts variadic `WithOption` configuration functions (currently unused in this minimal implementation).
|
||||
- **Behavior**:
|
||||
- Instantiates a new `IBioSequence` iterator via `obiiter.MakeIBioSequence()`.
|
||||
- Immediately closes the stream using `.Close()` — indicating no data will be yielded.
|
||||
- **Output**:
|
||||
- Returns a *terminal* iterator (no elements), suitable as a safe default or fallback.
|
||||
- Error return is always `nil`, since no I/O occurs and the operation is deterministic.
|
||||
|
||||
### Semantic Role & Use Cases
|
||||
- **Default/Placeholder**: Useful in conditional logic where a valid (but empty) sequence iterator is required when no input file exists or parsing fails.
|
||||
- **Consistency**: Ensures callers always receive a well-formed iterator, avoiding `nil` checks.
|
||||
- **Resource Safety**: The closed state prevents accidental iteration or memory leaks.
|
||||
|
||||
### Design Notes
|
||||
- Reflects a *pure-functional* and *fail-safe* pattern: no side effects, deterministic behavior.
|
||||
- Aligns with iterator-based I/O design principles in OBITools4 (lazy, composable streams).
|
||||
Reference in New Issue
Block a user