gramfuzz/gramfuzz/fields.py
def build(self, pre=None, shortest=False):
        """Build the ``And`` instance

        :param list pre: The prerequisites list
        :param bool shortest: Whether or not the shortest reference-chain (most minimal) version of the field should be generated.
        """
        if pre is None:
            pre = []

        res = deque()
        for x in self.values:
            try:
                res.append(utils.val(x, pre, shortest=shortest))
            except errors.OptGram as e:
                continue
            except errors.FlushGrams as e:
                prev = "".join(res)
                res.clear()
                # this is assuming a scope was pushed!
                if len(self.fuzzer._scope_stack) == 1:
                    pre.append(prev)
                else:
                    stmts = self.fuzzer._curr_scope.setdefault("prev_append", deque())
                    stmts.extend(pre)
                    stmts.append(prev)
                    pre.clear()
                continue

        return self.sep.join(res)
def build(self, pre=None, shortest=False):
        if pre is None:
            pre = []

        res = deque()
        for x in self.values:
            try:
                res.append(utils.val(x, pre, shortest=shortest))
            except errors.OptGram as e:
                continue
            except errors.FlushGrams as e:
                prev = "".join(res)
                res.clear()
                # this is assuming a scope was pushed!
                if len(self.fuzzer._scope_stack) == 1:
                    pre.append(prev)
                else:
                    stmts = self.fuzzer._curr_scope.setdefault("prev_append", deque())
                    stmts.extend(pre)
                    stmts.append(prev)
                    pre.clear()
                continue

        return self.sep.join(res)
def build ( self , pre = None , shortest = False ) : if pre is None : pre = [ ] res = deque ( ) for x in self . values : try : res . append ( utils . val ( x , pre , shortest = shortest ) ) except errors . OptGram as e : continue except errors . FlushGrams as e : prev = "" . join ( res ) res . clear ( ) # this is assuming a scope was pushed! if len ( self . fuzzer . _scope_stack ) == 1 : pre . append ( prev ) else : stmts = self . fuzzer . _curr_scope . setdefault ( "prev_append" , deque ( ) ) stmts . extend ( pre ) stmts . append ( prev ) pre . clear ( ) continue return self . sep . join ( res )
Build the ``And`` instance

        :param list pre: The prerequisites list
        :param bool shortest: Whether or not the shortest reference-chain (most minimal) version of the field should be generated.
Build the And instance