ID mirrors the overload signature and provides a unique id which may be referenced within the type-checker and interpreter to optimize performance. The ID format is usually one of two styles: global: _ _ member: _ _ _
()
| 684 | // global: <functionName>_<argType>_<argTypeN> |
| 685 | // member: <memberType>_<functionName>_<argType>_<argTypeN> |
| 686 | func (o *OverloadDecl) ID() string { |
| 687 | if o == nil { |
| 688 | return "" |
| 689 | } |
| 690 | return o.id |
| 691 | } |
| 692 | |
| 693 | // ArgTypes contains the set of argument types expected by the overload. |
| 694 | // |