private void ReadDeclarations(XElement?declarations) { if (declarations == null) { return; } foreach (var declarationElement in declarations.Elements()) { var editableAttribute = declarationElement.Attribute("Editable"); var functionElement = CodeSnippet.GetElementWithoutNamespace(declarationElement, "Function"); SnippetFunctionService.TryGetSnippetFunctionInfo(functionElement?.Value, out var functionName, out var functionParam); _tokens.Add(new ExpansionField( CodeSnippet.GetElementInnerText(declarationElement, "ID"), CodeSnippet.GetElementInnerText(declarationElement, "Default") ?? " ", functionName, functionParam, editableAttribute == null || string.Equals(editableAttribute.Value, "true", StringComparison.Ordinal) || string.Equals(editableAttribute.Value, "1", StringComparison.Ordinal))); } }