// The bare-VISIBLE author: a one-field generic `Box` (size 8) with a BY-VALUE // receiver method `dbl` (`self: Box`). `b.sx` flat-imports `c.sx`, so a file // importing only b.sx reaches `c.Box` at two hops and must NOT dispatch to it. Box :: struct($T: Type) { x: T; make :: (value: T) -> Box(T) { .{ x = value } } dbl :: (self: Box) -> T { self.x * 2 } } #import "c.sx";