MCPcopy Create free account
hub / github.com/devaccuracy/ledgerforge / MarkFieldAsTokenized

Method MarkFieldAsTokenized

model/identity.go:89–117  ·  view source on GitHub ↗
(fieldName string)

Source from the content-addressed store, hash-verified

87}
88
89func (i *Identity) MarkFieldAsTokenized(fieldName string) {
90 if i.MetaData == nil {
91 i.MetaData = make(map[string]interface{})
92 }
93
94 structFieldName := convertToStructFieldName(fieldName)
95
96 existingTokenizedFields := make(map[string]bool)
97
98 // First check if tokenized_fields exists and what type it is
99 if tokenizedFieldsRaw, exists := i.MetaData["tokenized_fields"]; exists {
100 // Try to cast to map[string]bool
101 if tokenizedMap, ok := tokenizedFieldsRaw.(map[string]bool); ok {
102 for field, isTokenized := range tokenizedMap {
103 existingTokenizedFields[field] = isTokenized
104 }
105 } else if tokenizedMap, ok := tokenizedFieldsRaw.(map[string]interface{}); ok {
106 // Handle map[string]interface{} case (common when unmarshalled from JSON)
107 for field, val := range tokenizedMap {
108 if boolVal, ok := val.(bool); ok {
109 existingTokenizedFields[field] = boolVal
110 }
111 }
112 }
113 }
114
115 existingTokenizedFields[structFieldName] = true
116 i.MetaData["tokenized_fields"] = existingTokenizedFields
117}

Callers 2

TokenizeIdentityFieldMethod · 0.80

Calls 1

convertToStructFieldNameFunction · 0.70

Tested by 1