Skip to content
GitLab
    • GitLab: the DevOps platform
    • Explore GitLab
    • Install GitLab
    • How GitLab compares
    • Get started
    • GitLab docs
    • GitLab Learn
  • Pricing
  • Talk to an expert
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    • Switch to GitLab Next
    Projects Groups Snippets
  • Sign up now
  • Login
  • Sign in / Register
  • M mdds
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 16
    • Issues 16
    • List
    • Boards
    • Service Desk
    • Milestones
    • Requirements
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
    • Test Cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • mdds
  • mdds
  • Merge requests
  • !7

add replace method for multi_type_vector

  • Review changes

  • Download
  • Email patches
  • Plain diff
Closed Dennis Francis requested to merge dennisfrancis/mdds:replace into master Sep 15, 2017
  • Overview 20
  • Commits 1
  • Pipelines 0
  • Changes 9

Bulk replace is better than iteratively overwriting several elements of a multi type vector by calling set() etc replace() implements bulk replace that rebuilds the mtv while going through the replace entries list passed to it.

The replace method is particularly important when we refactor multi_type_vector to store absolute positions in blocks rather than the block sizes to make random lookups faster. Refer: https://lists.freedesktop.org/archives/libreoffice/2017-August/078357.html

Also adds test case for replace in multi_type_vector_test_custom.cpp

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: replace