getInterningStats returns statistics about string interning usage
()
| 743 | |
| 744 | // getInterningStats returns statistics about string interning usage |
| 745 | func (b *Buffer) getInterningStats() map[string]interface{} { |
| 746 | b.mu.RLock() |
| 747 | defer b.mu.RUnlock() |
| 748 | |
| 749 | stats := make(map[string]interface{}) |
| 750 | stats["enabled"] = len(b.internCols) > 0 |
| 751 | |
| 752 | if len(b.internCols) == 0 { |
| 753 | return stats |
| 754 | } |
| 755 | |
| 756 | internedCols := 0 |
| 757 | for _, enabled := range b.internCols { |
| 758 | if enabled { |
| 759 | internedCols++ |
| 760 | } |
| 761 | } |
| 762 | |
| 763 | stats["total_columns"] = b.colLen |
| 764 | stats["interned_columns"] = internedCols |
| 765 | stats["percentage"] = float64(internedCols) / float64(b.colLen) * 100.0 |
| 766 | |
| 767 | return stats |
| 768 | } |
| 769 | |
| 770 | //clear selectedCell of buffer |
| 771 | //func (b *Buffer) clearSelection() { |
no outgoing calls