component_model 0.17.0

Revolutionary type-safe component assignment for Rust. Build complex objects with zero boilerplate using derive macros and type-driven field setting. Perfect for configuration builders, fluent APIs, and object composition patterns.
Documentation
# Task 011: Argument for Constructor Attribute

## ๐Ÿ“‹ **Overview**
Introduce field attribute `arg_for_constructor` to mark fields as arguments for constructing functions.

## ๐ŸŽฏ **Objectives**
- Add `arg_for_constructor` field attribute
- Mark fields that should be used in constructing functions
- Support both standalone constructors and associated constructors
- Handle enum field restrictions properly
- By default `arg_for_constructor` is false

## ๐Ÿ”ง **Technical Details**

### Field Marking
- Mark fields with `arg_for_constructor` attribute
- Fields marked as constructor arguments
- Works with both structs and enums

### Enum Restrictions
- `arg_for_constructor` attachable only to fields of variant
- **Error**: Attempting to attach to variant itself must throw understandable error
- Only variant fields can be constructor arguments

### Constructor Naming
- **Struct**: snake_case version of struct name
- **Enum**: snake_case version of variant name

### Default Behavior
- `arg_for_constructor` defaults to `false`
- Only marked fields become constructor arguments

## ๐Ÿ“ **Source Location**
File: `/home/user1/pro/lib/wTools/module/core/component_model/src/lib.rs`
Line: 12

## ๐Ÿท๏ธ **Labels**
- **Type**: Feature Enhancement  
- **Priority**: Medium
- **Difficulty**: ๐ŸŸก Medium
- **Value**: ๐ŸŸ  Medium
- **Status**: ๐Ÿ“‹ Planned

## ๐Ÿ“ฆ **Dependencies**
- Task 010: Standalone Constructors
- Component model core functionality

## ๐Ÿงช **Acceptance Criteria**
- [ ] Add `arg_for_constructor` field attribute parsing
- [ ] Support constructor arguments for struct fields
- [ ] Support constructor arguments for enum variant fields
- [ ] Validate enum usage (fields only, not variants)
- [ ] Generate constructors with proper arguments
- [ ] Provide clear error messages for invalid usage
- [ ] Add comprehensive tests
- [ ] Update documentation with examples