INNER CODE UNIT · C#

ContainsOpaquePointer

axmolengine/axmol · tools/bindings-generator/src/BindingGenerator.cs:1094

    private static bool ContainsOpaquePointer(string type) =>
        Regex.IsMatch(type, @"(?<![A-Za-z0-9_])(?:const\s+)?void\s*\*", RegexOptions.CultureInvariant);

    private static bool ContainsScalarPointer(string type) =>
        Regex.IsMatch(type,
            @"(?<![A-Za-z0-9_])(?:const\s+)?(?:bool|char|short|int|long|long\s+long|float|double|size_t|uint\d*_t|int\d*_t)\s*\*",
            RegexOptions.CultureInvariant);

    private static bool HasIncompleteNamedType(string type, string context, CursorTree tree)
    {
        var resolved = ResolveType(type, context, tree);
        foreach (Match match in Regex.Matches(resolved, @"(?:[A-Za-z_]\w*::)*[A-Za-z_]\w*"))
        {
            var qualifiedToken = match.Value;
            var shortName = qualifiedToken[(qualifiedToken.LastIndexOf("::", StringComparison.Ordinal) + 2)..];
            if (!tree.TypeNames.TryGetValue(shortName, out var candidates))
                continue;
            if (candidates.Any(candidate =>

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…