private static SyntaxTreeIndex ReadFrom(ObjectReader reader, VersionStamp version)
        {
            var identifierInfo  = IdentifierInfo.ReadFrom(reader);
            var contextInfo     = ContextInfo.ReadFrom(reader);
            var declarationInfo = DeclarationInfo.ReadFrom(reader);

            if (identifierInfo == null || contextInfo == null || declarationInfo == null)
            {
                return(null);
            }

            return(new SyntaxTreeIndex(
                       version, identifierInfo.Value, contextInfo.Value, declarationInfo.Value));
        }