gtop 798 global/global.c GTOP *gtop = gtags_open(dbpath, root, db, GTAGS_READ, 0); gtop 837 global/global.c for (gtp = gtags_first(gtop, strbuf_value(sb), flags); gtp; gtp = gtags_next(gtop)) { gtop 850 global/global.c for (gtp = gtags_first(gtop, prefix, flags); gtp; gtp = gtags_next(gtop)) { gtop 856 global/global.c gtags_close(gtop); gtop 1574 global/global.c GTOP *gtop; gtop 1588 global/global.c gtop = gtags_open(dbpath, root, db, GTAGS_READ, 0); gtop 1609 global/global.c if (gtop->format & GTAGS_COMPACT) gtop 1611 global/global.c for (gtp = gtags_first(gtop, pattern, flags); gtp; gtp = gtags_next(gtop)) { gtop 1617 global/global.c } else if (gtop->format & GTAGS_COMPACT) { gtop 1666 global/global.c if (gtop->format & GTAGS_COMPLINE) { gtop 1703 global/global.c if (gtop->format & GTAGS_COMPNAME) gtop 1733 global/global.c if (gtop->format & GTAGS_COMPNAME) gtop 1758 global/global.c if (gtop->format & GTAGS_COMPNAME) { gtop 1768 global/global.c if (gtop->format & GTAGS_COMPRESS) gtop 1782 global/global.c gtags_close(gtop); gtop 473 gtags/gtags.c GTOP *gtop = gtags_open(dbpath, cwd, GTAGS, GTAGS_MODIFY, 0); gtop 474 gtags/gtags.c gtags_close(gtop); gtop 735 gtags/gtags.c GTOP *gtop[GTAGLIM]; gtop 742 gtags/gtags.c GTOP *gtop; gtop 746 gtags/gtags.c gtop = data->gtop[GTAGS]; gtop 749 gtags/gtags.c gtop = data->gtop[GRTAGS]; gtop 750 gtags/gtags.c if (gtop == NULL) gtop 756 gtags/gtags.c gtags_put_using(gtop, tag, lno, data->fid, line_image); gtop 778 gtags/gtags.c data.gtop[GTAGS] = gtags_open(dbpath, root, GTAGS, GTAGS_MODIFY, 0); gtop 780 gtags/gtags.c data.gtop[GRTAGS] = gtags_open(dbpath, root, GRTAGS, GTAGS_MODIFY, 0); gtop 786 gtags/gtags.c data.gtop[GRTAGS] = NULL; gtop 806 gtags/gtags.c gtags_delete(data.gtop[GTAGS], deleteset); gtop 807 gtags/gtags.c if (data.gtop[GRTAGS] != NULL) gtop 808 gtags/gtags.c gtags_delete(data.gtop[GRTAGS], deleteset); gtop 813 gtags/gtags.c data.gtop[GTAGS]->flags = 0; gtop 815 gtags/gtags.c data.gtop[GTAGS]->flags |= GTAGS_EXTRACTMETHOD; gtop 816 gtags/gtags.c data.gtop[GRTAGS]->flags = data.gtop[GTAGS]->flags; gtop 838 gtags/gtags.c gtags_flush(data.gtop[GTAGS], data.fid); gtop 839 gtags/gtags.c if (data.gtop[GRTAGS] != NULL) gtop 840 gtags/gtags.c gtags_flush(data.gtop[GRTAGS], data.fid); gtop 843 gtags/gtags.c gtags_close(data.gtop[GTAGS]); gtop 844 gtags/gtags.c if (data.gtop[GRTAGS] != NULL) gtop 845 gtags/gtags.c gtags_close(data.gtop[GRTAGS]); gtop 866 gtags/gtags.c data.gtop[GTAGS] = gtags_open(dbpath, root, GTAGS, GTAGS_CREATE, openflags); gtop 867 gtags/gtags.c data.gtop[GTAGS]->flags = 0; gtop 869 gtags/gtags.c data.gtop[GTAGS]->flags |= GTAGS_EXTRACTMETHOD; gtop 870 gtags/gtags.c data.gtop[GRTAGS] = gtags_open(dbpath, root, GRTAGS, GTAGS_CREATE, openflags); gtop 871 gtags/gtags.c data.gtop[GRTAGS]->flags = data.gtop[GTAGS]->flags; gtop 902 gtags/gtags.c gtags_flush(data.gtop[GTAGS], data.fid); gtop 903 gtags/gtags.c gtags_flush(data.gtop[GRTAGS], data.fid); gtop 910 gtags/gtags.c gtags_close(data.gtop[GTAGS]); gtop 911 gtags/gtags.c gtags_close(data.gtop[GRTAGS]); gtop 1936 htags/htags.c GTOP *gtop; gtop 1952 htags/htags.c gtop = gtags_open(dbpath, cwdpath, GTAGS, GTAGS_READ, 0); gtop 1953 htags/htags.c gtags_close(gtop); gtop 1957 htags/htags.c gtop = gtags_open(dbpath, cwdpath, GRTAGS, GTAGS_READ, 0); gtop 1958 htags/htags.c if (gtags_first(gtop, NULL, 0) == NULL) gtop 1960 htags/htags.c gtags_close(gtop); gtop 272 libutil/gtagsop.c #define VIRTUAL_GRTAGS_GSYMS_PROCESSING(gtop) \ gtop 273 libutil/gtagsop.c if (gtop->db == GRTAGS || gtop->db == GSYMS) { \ gtop 274 libutil/gtagsop.c int defined = is_defined_in_GTAGS(gtop, gtop->dbop->lastkey); \ gtop 275 libutil/gtagsop.c if ((gtop->db == GRTAGS && !defined) || (gtop->db == GSYMS && defined)) \ gtop 288 libutil/gtagsop.c is_defined_in_GTAGS(GTOP *gtop, const char *name) gtop 296 libutil/gtagsop.c return prev_result = dbop_get(gtop->gtags, prev_name) ? 1 : 0; gtop 329 libutil/gtagsop.c GTOP *gtop; gtop 333 libutil/gtagsop.c gtop = (GTOP *)check_calloc(sizeof(GTOP), 1); gtop 334 libutil/gtagsop.c gtop->db = db; gtop 335 libutil/gtagsop.c gtop->mode = mode; gtop 336 libutil/gtagsop.c gtop->openflags = flags; gtop 340 libutil/gtagsop.c switch (gtop->mode) { gtop 361 libutil/gtagsop.c gtop->dbop = dbop_open(tagfile, dbmode, 0644, DBOP_DUP|DBOP_SORTED_WRITE); gtop 362 libutil/gtagsop.c if (gtop->dbop == NULL) { gtop 367 libutil/gtagsop.c if (gtop->mode == GTAGS_READ && db != GTAGS) { gtop 371 libutil/gtagsop.c gtop->gtags = dbop_open(gtags, 0, 0, 0); gtop 372 libutil/gtagsop.c if (gtop->gtags == NULL) gtop 374 libutil/gtagsop.c format_version = dbop_getversion(gtop->dbop); gtop 380 libutil/gtagsop.c if (gtop->mode == GTAGS_CREATE) { gtop 384 libutil/gtagsop.c gtop->format = 0; gtop 385 libutil/gtagsop.c gtop->format_version = new_format_version; gtop 390 libutil/gtagsop.c if (gtop->db == GRTAGS || gtop->db == GSYMS || gtop->openflags & GTAGS_COMPACT) { gtop 391 libutil/gtagsop.c gtop->format |= GTAGS_COMPACT; gtop 392 libutil/gtagsop.c gtop->format |= GTAGS_COMPLINE; gtop 395 libutil/gtagsop.c gtop->format |= GTAGS_COMPRESS; gtop 397 libutil/gtagsop.c gtop->format |= GTAGS_COMPNAME; gtop 398 libutil/gtagsop.c if (gtop->format & GTAGS_COMPACT) gtop 399 libutil/gtagsop.c dbop_putoption(gtop->dbop, COMPACTKEY, NULL); gtop 400 libutil/gtagsop.c if (gtop->format & GTAGS_COMPRESS) { gtop 401 libutil/gtagsop.c dbop_putoption(gtop->dbop, COMPRESSKEY, DEFAULT_ABBREVIATION); gtop 404 libutil/gtagsop.c if (gtop->format & GTAGS_COMPLINE) gtop 405 libutil/gtagsop.c dbop_putoption(gtop->dbop, COMPLINEKEY, NULL); gtop 406 libutil/gtagsop.c if (gtop->format & GTAGS_COMPNAME) gtop 407 libutil/gtagsop.c dbop_putoption(gtop->dbop, COMPNAMEKEY, NULL); gtop 408 libutil/gtagsop.c dbop_putversion(gtop->dbop, gtop->format_version); gtop 420 libutil/gtagsop.c gtop->format_version = dbop_getversion(gtop->dbop); gtop 421 libutil/gtagsop.c if (gtop->format_version > upper_bound_version) gtop 423 libutil/gtagsop.c else if (gtop->format_version < lower_bound_version) gtop 425 libutil/gtagsop.c gtop->format = 0; gtop 426 libutil/gtagsop.c if (dbop_getoption(gtop->dbop, COMPACTKEY) != NULL) gtop 427 libutil/gtagsop.c gtop->format |= GTAGS_COMPACT; gtop 428 libutil/gtagsop.c if ((p = dbop_getoption(gtop->dbop, COMPRESSKEY)) != NULL) { gtop 430 libutil/gtagsop.c gtop->format |= GTAGS_COMPRESS; gtop 432 libutil/gtagsop.c if (dbop_getoption(gtop->dbop, COMPLINEKEY) != NULL) gtop 433 libutil/gtagsop.c gtop->format |= GTAGS_COMPLINE; gtop 434 libutil/gtagsop.c if (dbop_getoption(gtop->dbop, COMPNAMEKEY) != NULL) gtop 435 libutil/gtagsop.c gtop->format |= GTAGS_COMPNAME; gtop 443 libutil/gtagsop.c if (gtop->mode != GTAGS_READ) gtop 444 libutil/gtagsop.c gtop->sb = strbuf_open(0); /* This buffer is used for working area. */ gtop 448 libutil/gtagsop.c if (gtop->format & GTAGS_COMPACT) { gtop 450 libutil/gtagsop.c strlimcpy(gtop->root, root, sizeof(gtop->root)); gtop 451 libutil/gtagsop.c if (gtop->mode != GTAGS_READ) gtop 452 libutil/gtagsop.c gtop->path_hash = strhash_open(HASHBUCKETS); gtop 454 libutil/gtagsop.c return gtop; gtop 466 libutil/gtagsop.c gtags_put_using(GTOP *gtop, const char *tag, int lno, const char *fid, const char *img) gtop 470 libutil/gtagsop.c if (gtop->format & GTAGS_COMPACT) { gtop 484 libutil/gtagsop.c entry = strhash_assign(gtop->path_hash, tag, 1); gtop 498 libutil/gtagsop.c if (gtop->flags & GTAGS_EXTRACTMETHOD) { gtop 508 libutil/gtagsop.c strbuf_reset(gtop->sb); gtop 509 libutil/gtagsop.c strbuf_puts(gtop->sb, fid); gtop 510 libutil/gtagsop.c strbuf_putc(gtop->sb, ' '); gtop 511 libutil/gtagsop.c strbuf_puts(gtop->sb, (gtop->format & GTAGS_COMPNAME) ? compress(tag, key) : tag); gtop 512 libutil/gtagsop.c strbuf_putc(gtop->sb, ' '); gtop 513 libutil/gtagsop.c strbuf_putn(gtop->sb, lno); gtop 514 libutil/gtagsop.c strbuf_putc(gtop->sb, ' '); gtop 515 libutil/gtagsop.c strbuf_puts(gtop->sb, (gtop->format & GTAGS_COMPRESS) ? compress(img, key) : img); gtop 516 libutil/gtagsop.c dbop_put(gtop->dbop, key, strbuf_value(gtop->sb)); gtop 525 libutil/gtagsop.c gtags_flush(GTOP *gtop, const char *fid) gtop 527 libutil/gtagsop.c if (gtop->format & GTAGS_COMPACT) { gtop 528 libutil/gtagsop.c flush_pool(gtop, fid); gtop 529 libutil/gtagsop.c strhash_reset(gtop->path_hash); gtop 539 libutil/gtagsop.c gtags_delete(GTOP *gtop, IDSET *deleteset) gtop 544 libutil/gtagsop.c for (tagline = dbop_first(gtop->dbop, NULL, NULL, 0); tagline; tagline = dbop_next(gtop->dbop)) { gtop 553 libutil/gtagsop.c dbop_delete(gtop->dbop, NULL); gtop 573 libutil/gtagsop.c gtags_first(GTOP *gtop, const char *pattern, int flags) gtop 584 libutil/gtagsop.c if (gtop->path_hash) { gtop 585 libutil/gtagsop.c strhash_close(gtop->path_hash); gtop 586 libutil/gtagsop.c gtop->path_hash = NULL; gtop 588 libutil/gtagsop.c if (gtop->path_array) { gtop 589 libutil/gtagsop.c free(gtop->path_array); gtop 590 libutil/gtagsop.c gtop->path_array = NULL; gtop 593 libutil/gtagsop.c gtop->flags = flags; gtop 642 libutil/gtagsop.c if (gtop->flags & GTOP_PATH) { gtop 648 libutil/gtagsop.c gtop->path_hash = strhash_open(HASHBUCKETS); gtop 658 libutil/gtagsop.c for (tagline = dbop_first(gtop->dbop, key, preg, dbflags); gtop 660 libutil/gtagsop.c tagline = dbop_next(gtop->dbop)) gtop 662 libutil/gtagsop.c VIRTUAL_GRTAGS_GSYMS_PROCESSING(gtop); gtop 668 libutil/gtagsop.c entry = strhash_assign(gtop->path_hash, tagline, 1); gtop 674 libutil/gtagsop.c entry->value = strhash_strdup(gtop->path_hash, cp, 0); gtop 686 libutil/gtagsop.c gtop->path_array = (char **)check_malloc(gtop->path_hash->entries * sizeof(char *)); gtop 688 libutil/gtagsop.c for (entry = strhash_first(gtop->path_hash); entry != NULL; entry = strhash_next(gtop->path_hash)) gtop 689 libutil/gtagsop.c gtop->path_array[i++] = entry->value; gtop 690 libutil/gtagsop.c if (i != gtop->path_hash->entries) gtop 691 libutil/gtagsop.c die("Something is wrong. 'i = %lu, entries = %lu'" , i, gtop->path_hash->entries); gtop 692 libutil/gtagsop.c if (!(gtop->flags & GTOP_NOSORT)) gtop 693 libutil/gtagsop.c qsort(gtop->path_array, gtop->path_hash->entries, sizeof(char *), compare_path); gtop 694 libutil/gtagsop.c gtop->path_count = gtop->path_hash->entries; gtop 695 libutil/gtagsop.c gtop->path_index = 0; gtop 697 libutil/gtagsop.c if (gtop->path_index >= gtop->path_count) gtop 699 libutil/gtagsop.c gtop->gtp.path = gtop->path_array[gtop->path_index++]; gtop 700 libutil/gtagsop.c return >op->gtp; gtop 701 libutil/gtagsop.c } else if (gtop->flags & GTOP_KEY) { gtop 702 libutil/gtagsop.c for (gtop->gtp.tag = dbop_first(gtop->dbop, key, preg, dbflags); gtop 703 libutil/gtagsop.c gtop->gtp.tag != NULL; gtop 704 libutil/gtagsop.c gtop->gtp.tag = dbop_next(gtop->dbop)) gtop 706 libutil/gtagsop.c VIRTUAL_GRTAGS_GSYMS_PROCESSING(gtop); gtop 709 libutil/gtagsop.c return gtop->gtp.tag ? >op->gtp : NULL; gtop 711 libutil/gtagsop.c if (gtop->vb == NULL) gtop 712 libutil/gtagsop.c gtop->vb = varray_open(sizeof(GTP), 200); gtop 714 libutil/gtagsop.c varray_reset(gtop->vb); gtop 715 libutil/gtagsop.c if (gtop->segment_pool == NULL) gtop 716 libutil/gtagsop.c gtop->segment_pool = pool_open(); gtop 718 libutil/gtagsop.c pool_reset(gtop->segment_pool); gtop 719 libutil/gtagsop.c if (gtop->path_hash == NULL) gtop 720 libutil/gtagsop.c gtop->path_hash = strhash_open(HASHBUCKETS); gtop 722 libutil/gtagsop.c strhash_reset(gtop->path_hash); gtop 723 libutil/gtagsop.c tagline = dbop_first(gtop->dbop, key, preg, dbflags); gtop 729 libutil/gtagsop.c dbop_unread(gtop->dbop); gtop 733 libutil/gtagsop.c segment_read(gtop); gtop 734 libutil/gtagsop.c return >op->gtp_array[gtop->gtp_index++]; gtop 745 libutil/gtagsop.c gtags_next(GTOP *gtop) gtop 747 libutil/gtagsop.c if (gtop->flags & GTOP_PATH) { gtop 748 libutil/gtagsop.c if (gtop->path_index >= gtop->path_count) gtop 750 libutil/gtagsop.c gtop->gtp.path = gtop->path_array[gtop->path_index++]; gtop 751 libutil/gtagsop.c return >op->gtp; gtop 752 libutil/gtagsop.c } else if (gtop->flags & GTOP_KEY) { gtop 753 libutil/gtagsop.c for (gtop->gtp.tag = dbop_next(gtop->dbop); gtop 754 libutil/gtagsop.c gtop->gtp.tag != NULL; gtop 755 libutil/gtagsop.c gtop->gtp.tag = dbop_next(gtop->dbop)) gtop 757 libutil/gtagsop.c VIRTUAL_GRTAGS_GSYMS_PROCESSING(gtop); gtop 760 libutil/gtagsop.c return gtop->gtp.tag ? >op->gtp : NULL; gtop 766 libutil/gtagsop.c if (gtop->gtp_index >= gtop->gtp_count) { gtop 767 libutil/gtagsop.c varray_reset(gtop->vb); gtop 768 libutil/gtagsop.c pool_reset(gtop->segment_pool); gtop 770 libutil/gtagsop.c segment_read(gtop); gtop 772 libutil/gtagsop.c if (gtop->gtp_index >= gtop->gtp_count) gtop 774 libutil/gtagsop.c return >op->gtp_array[gtop->gtp_index++]; gtop 783 libutil/gtagsop.c gtags_close(GTOP *gtop) gtop 785 libutil/gtagsop.c if (gtop->format & GTAGS_COMPRESS) gtop 787 libutil/gtagsop.c if (gtop->format & GTAGS_COMPACT && gtop->cur_path[0]) gtop 788 libutil/gtagsop.c flush_pool(gtop, NULL); gtop 789 libutil/gtagsop.c if (gtop->segment_pool) gtop 790 libutil/gtagsop.c pool_close(gtop->segment_pool); gtop 791 libutil/gtagsop.c if (gtop->path_array) gtop 792 libutil/gtagsop.c free(gtop->path_array); gtop 793 libutil/gtagsop.c if (gtop->sb) gtop 794 libutil/gtagsop.c strbuf_close(gtop->sb); gtop 795 libutil/gtagsop.c if (gtop->vb) gtop 796 libutil/gtagsop.c varray_close(gtop->vb); gtop 797 libutil/gtagsop.c if (gtop->path_hash) gtop 798 libutil/gtagsop.c strhash_close(gtop->path_hash); gtop 800 libutil/gtagsop.c dbop_close(gtop->dbop); gtop 801 libutil/gtagsop.c if (gtop->gtags) gtop 802 libutil/gtagsop.c dbop_close(gtop->gtags); gtop 803 libutil/gtagsop.c free(gtop); gtop 812 libutil/gtagsop.c flush_pool(GTOP *gtop, const char *s_fid) gtop 818 libutil/gtagsop.c if (s_fid == NULL && (s_fid = gpath_path2fid(gtop->cur_path, NULL)) == NULL) gtop 819 libutil/gtagsop.c die("GPATH is corrupted.('%s' not found)", gtop->cur_path); gtop 824 libutil/gtagsop.c for (entry = strhash_first(gtop->path_hash); entry; entry = strhash_next(gtop->path_hash)) { gtop 837 libutil/gtagsop.c if (gtop->flags & GTAGS_EXTRACTMETHOD) { gtop 848 libutil/gtagsop.c strbuf_reset(gtop->sb); gtop 849 libutil/gtagsop.c strbuf_puts(gtop->sb, s_fid); gtop 850 libutil/gtagsop.c strbuf_putc(gtop->sb, ' '); gtop 851 libutil/gtagsop.c if (gtop->format & GTAGS_COMPNAME) { gtop 852 libutil/gtagsop.c strbuf_puts(gtop->sb, compress(entry->name, key)); gtop 854 libutil/gtagsop.c strbuf_puts(gtop->sb, entry->name); gtop 856 libutil/gtagsop.c strbuf_putc(gtop->sb, ' '); gtop 857 libutil/gtagsop.c header_offset = strbuf_getlen(gtop->sb); gtop 863 libutil/gtagsop.c if (gtop->format & GTAGS_COMPLINE) { gtop 877 libutil/gtagsop.c if (strbuf_getlen(gtop->sb) == header_offset) gtop 878 libutil/gtagsop.c strbuf_putn(gtop->sb, n); gtop 887 libutil/gtagsop.c strbuf_putc(gtop->sb, '-'); gtop 888 libutil/gtagsop.c strbuf_putn(gtop->sb, last - cont); gtop 891 libutil/gtagsop.c if (strbuf_getlen(gtop->sb) > header_offset) { gtop 892 libutil/gtagsop.c strbuf_putc(gtop->sb, ','); gtop 893 libutil/gtagsop.c strbuf_putn(gtop->sb, n - last); gtop 895 libutil/gtagsop.c strbuf_putn(gtop->sb, n); gtop 897 libutil/gtagsop.c if (strbuf_getlen(gtop->sb) > DBOP_PAGESIZE / 4) { gtop 898 libutil/gtagsop.c dbop_put(gtop->dbop, key, strbuf_value(gtop->sb)); gtop 899 libutil/gtagsop.c strbuf_setlen(gtop->sb, header_offset); gtop 905 libutil/gtagsop.c strbuf_putc(gtop->sb, '-'); gtop 906 libutil/gtagsop.c strbuf_putn(gtop->sb, last - cont); gtop 918 libutil/gtagsop.c if (strbuf_getlen(gtop->sb) > header_offset) gtop 919 libutil/gtagsop.c strbuf_putc(gtop->sb, ','); gtop 920 libutil/gtagsop.c strbuf_putn(gtop->sb, n); gtop 921 libutil/gtagsop.c if (strbuf_getlen(gtop->sb) > DBOP_PAGESIZE / 4) { gtop 922 libutil/gtagsop.c dbop_put(gtop->dbop, key, strbuf_value(gtop->sb)); gtop 923 libutil/gtagsop.c strbuf_setlen(gtop->sb, header_offset); gtop 928 libutil/gtagsop.c if (strbuf_getlen(gtop->sb) > header_offset) { gtop 929 libutil/gtagsop.c dbop_put(gtop->dbop, key, strbuf_value(gtop->sb)); gtop 956 libutil/gtagsop.c segment_read(GTOP *gtop) gtop 965 libutil/gtagsop.c gtop->cur_tagname[0] = '\0'; gtop 966 libutil/gtagsop.c while ((tagline = dbop_next(gtop->dbop)) != NULL) { gtop 967 libutil/gtagsop.c VIRTUAL_GRTAGS_GSYMS_PROCESSING(gtop); gtop 973 libutil/gtagsop.c if (gtop->cur_tagname[0] == '\0') { gtop 974 libutil/gtagsop.c strlimcpy(gtop->cur_tagname, gtop->dbop->lastkey, sizeof(gtop->cur_tagname)); gtop 975 libutil/gtagsop.c } else if (strcmp(gtop->cur_tagname, gtop->dbop->lastkey) != 0) { gtop 979 libutil/gtagsop.c dbop_unread(gtop->dbop); gtop 982 libutil/gtagsop.c gtp = varray_append(gtop->vb); gtop 983 libutil/gtagsop.c gtp->tagline = pool_strdup(gtop->segment_pool, tagline, 0); gtop 984 libutil/gtagsop.c gtp->tag = (const char *)gtop->cur_tagname; gtop 992 libutil/gtagsop.c sh = strhash_assign(gtop->path_hash, path, 1); gtop 1002 libutil/gtagsop.c gtop->gtp_array = varray_assign(gtop->vb, 0, 0); gtop 1003 libutil/gtagsop.c gtop->gtp_count = gtop->vb->length; gtop 1004 libutil/gtagsop.c gtop->gtp_index = 0; gtop 1005 libutil/gtagsop.c if (!(gtop->flags & GTOP_NOSORT)) gtop 1006 libutil/gtagsop.c qsort(gtop->gtp_array, gtop->gtp_count, sizeof(GTP), compare_tags);