Implement ExpandedArray in the extensions API

XMLWordPrintableJSON

    • Query Integration
    • Fully Compatible
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      • required to perform ParseNode::expand()
      • depends on ParseNode and AstNode
        struct ExpansionContainer {
          struct ExpansionContainerVTable* const vtable;
        };
        
        struct ExpansionContainerVTable {
           void (*destroy)(); // destroy all elements remaining
           bool (*empty)(); // must be no except
           size_t (*size)(); // must be no except
           // Do we want to be able to get specific element types?
           MongoExtensionStatus* (*getElementType)(size_t index, TypeEnum** type);
           // OR do we restrict our usage to just the next element 
           MongoExtensionStatus* (*getFrontType)(TypeEnum** type);
           MongoExtensionStatus* popFrontAsParseNode(ParseNode** parseNode);
           MongoExtensionStatus* popFrontAsASTNode(ASTNode** astNode);
        } 

            Assignee:
            Lynne Wang
            Reporter:
            Santiago Roche
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: