@masatake Thanks for your detailed explanation. I don't think we really need any special API for that, I was just asking in case we were doing something stupid unnecessarily :-)
Those multiple scope separators in PHP are quite unpleasant though - our code currently assumes there's a single type of scope separator per language. I guess the easiest way for us will be to rewrite tags we receive from ctags to have a single type of scope separator. Is there any other language that uses multiple types of scope separators?
(I'm not sure if multiple types of scope separators are a good idea even if the given language uses these for certain kinds - I think tools processing ctags files won't be very happy they have to deal with this.)
I also started realizing we'll have to take "roles" into account which we currently ignore - in the go compiler for instance the role is used to distinguish between the package of the file and imported packages which are 2 different things and confuse our code:
static roleDefinition GoPackageRoles [] = {
{ true, "imported", "imported package" },
};
{true, 'p', "package", "packages",
.referenceOnly = false, ATTACH_ROLES (GoPackageRoles)},
Am I right to assume that roleBitsType roleBits
inside sTagEntryInfo
defines whether a kind has a certain role? For instance for some role definition like
static roleDefinition SomeRoles [] = {
{ true, "foo", "" },
{ true, "bar", "" },
{ true, "baz", "" },
};
5
(i.e. 101
in binary) would mean that the kind has the foo
and baz
roles?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.