-
Notifications
You must be signed in to change notification settings - Fork 130
Closed
Labels
enhancementNew feature or requestNew feature or requestgood first issueGood for newcomersGood for newcomershelp wantedExtra attention is neededExtra attention is neededrefactoring
Description
Important
Refactoring changes should be rebased and merged against this branch:
feature/655-api-modernization-and-refactoring
Summary
Remove or shorten the legacy Hungarian-style type prefixes used throughout the SDK.
Current prefixes and their purpose
| Prefix | Meaning | Example | Count |
|---|---|---|---|
IE |
Interface | IEByteBuffer, IEIOStream, IESyncObject |
~12 classes |
TE |
Template | TEArrayList, TEHashMap, TELinkedList |
~14 classes |
NE |
Namespace (utility) | NECommon, NEString, NEService |
~10 classes |
GE |
Global/Engine | GEGlobal.h, GEMacros.h, GETypes.h |
~4 files |
Target state
| Current | New | Rationale |
|---|---|---|
IEByteBuffer |
IByteBuffer |
I prefix for interfaces is widely understood |
IEIOStream |
IIOStream |
Same |
IESyncObject |
ISyncObject |
Same |
TEArrayList<T> |
ArrayList<T> |
Templates are obvious from <T> syntax |
TEHashMap<K,V> |
HashMap<K,V> |
Same |
TELinkedList<T> |
LinkedList<T> |
Same |
TEString<T> |
Keep or rename to BasicString<T> |
Follows std::basic_string convention |
NECommon |
Dissolved into areg::common namespace |
Handled by namespace issue |
NEString |
Dissolved into areg::string namespace |
Same |
GEGlobal.h |
areg/global.h |
Drop prefix from filenames |
GEMacros.h |
areg/macros.h |
Same |
GETypes.h |
areg/types.h |
Same |
GESwitches.h |
areg/switches.h |
Same |
Depends on
- Namespace issue must be completed first (or done simultaneously), since
NEremoval requires namespaces to be in place.
Scope
- ~12 interface classes (
IEprefix) - ~14 template classes (
TEprefix) - ~10 namespace utility classes (
NEprefix) — covered by namespace issue - ~4 global header files (
GEprefix) - All files that reference these types (essentially the entire codebase)
Acceptance criteria
- No
IEprefix remains — all converted toI - No
TEprefix remains — all dropped - No
GEprefix remains in filenames -
NEclasses dissolved into namespaces (coordinated with namespace issue) - All
#includepaths updated for renamed files - Project compiles and all tests pass
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requestgood first issueGood for newcomersGood for newcomershelp wantedExtra attention is neededExtra attention is neededrefactoring
Projects
Status
No status