schema_types_edge_cases library
Edge case examples for schema variable type extraction
This file demonstrates complex scenarios that should work with @AckType:
- Lists with typed elements (List
- Nested schema references
- Complex method chains
- Optional and nullable combinations
These examples serve as both documentation and integration tests.
Extension Types
- AddressType
- Extension type for Address
- ContactListType
- Extension type for ContactList
- EmployeeType
- Extension type for Employee
- EmptyType
- Extension type for Empty
- GridType
- Extension type for Grid
- ItemType
- Extension type for Item
- MinimalType
- Extension type for Minimal
- ModifierType
- Extension type for Modifier
- MyCustomSchema123Type
- Extension type for MyCustomSchema123
- NamedItemType
- Extension type for NamedItem
- PersonType
- Extension type for Person
- ProductType
- Extension type for Product
- TaggedItemType
- Extension type for TaggedItem
Properties
- addressSchema → ObjectSchema
-
Simple address schema for composition
final
- contactListSchema → ObjectSchema
-
Schema with list of nested objects (when we support it)
final
- employeeSchema → ObjectSchema
-
Schema with multiple nested references
final
- emptySchema → ObjectSchema
-
Empty schema (edge case)
final
- gridSchema → ObjectSchema
-
Schema with nested lists (matrix/grid data)
final
- item → ObjectSchema
-
Schema without 'Schema' suffix (should generate ItemType)
final
- minimalSchema → ObjectSchema
-
Single field schema (minimal case)
final
- modifierSchema → ObjectSchema
-
Schema with various modifier combinations
final
- myCustomSchema123 → ObjectSchema
-
Schema with unusual name (should handle gracefully)
final
- namedItemSchema → ObjectSchema
-
Schema with 'Schema' suffix (should generate NamedType)
final
- personSchema → ObjectSchema
-
Schema that references another schema variable
final
- productSchema → ObjectSchema
-
Schema with various list types
final
- taggedItemSchema → ObjectSchema
-
Schema combining lists and optional modifiers
final