# Rust lang.
## Topic A
You have implied a function which works well for a while (suppose A is a known struct in your project):
```rust
fn foo(a: &[A]) -> usize
```
One day your colleague complain that “I need to call your foo but I have only a ref. of A in my context, how should I do?”
Please refine the definition of your foo function without breaking any other code in the project, and enable someone calling your foo with single reference of A (`&A`)