//[SecurityPermission(SecurityAction.Demand, UnmanagedCode = true)]
 protected virtual void Dispose(bool disposing)
 {
     if (_hList != IntPtr.Zero)
     {
         GrammarApi.sol_DeleteLinksInfo(_hEngine, _hList);
         _hList = IntPtr.Zero;
     }
 }
Esempio n. 2
0
        public List <int> GetPhrasalLinks(int idPhrase, int linkType)
        {
            var res = new List <int>();

            var hList = GrammarApi.sol_ListLinksTxt(_engine, idPhrase, linkType, 1);

            if (hList != IntPtr.Zero)
            {
                var n = GrammarApi.sol_LinksInfoCount(_engine, hList);
                for (var i = 0; i < n; ++i)
                {
                    var idPhrase2 = GrammarApi.sol_LinksInfoEKey2(_engine, hList, i);
                    res.Add(idPhrase2);
                }

                GrammarApi.sol_DeleteLinksInfo(_engine, hList);
            }

            return(res);
        }