/DataStructures-Plugin

OctoberCMS Data Structures. Useful for more complex data manipulation and rendering

Primary LanguagePHPMIT LicenseMIT

OctoberCMS Data Structures Plugin

OctoberCMS Data Structures. Useful for more complex data manipulation and rendering.

Structures

  • Grid
  • List
  • Enum

Planned Structures

  • Tree
  • Heap
  • Structure
  • Stack
  • Queue

Grid

Creates a grid like data structure, useful for transitioning data to an UI.

Features

  • Takes in a 1-dimensional collection and is able to automatically format it into a grid of items.
  • Can automatically output sizings for creating row and columns with CSS libraries like Bootstrap and Material CSS.

Planned

  • Abstract the sizing further to allow compatbility with more grid CSS libraries

List

Creates a list of data useful for data manipulation.

Features

  • Expands upon the existing OctoberCMS collection
  • Allows for a limit to the list
  • Create the ability to drop the first entered items if the list exceeds its capacity on a list.push operation
  • Intelligent merging

Planned

  • Create a core for the stack and queue data structures to build off (Extends).

Enum

Useful to abstract away state based String comparisons

Features

  • Enum

Tree

The tree data structure will be useful for searching, sorting, heaps, and organization.

Planned

  • B-tree
  • B-search tree
  • Tree
  • AVL Tree
  • Expression Tree

Heap

The heap is used for efficient finding min, maxes, and sorting.

Planned

  • Min/Max heap
  • Min heap
  • Max heap
  • Heap sorting

Structure

A play off of C++ structures. Allows for creation of a data structure with X fields.

Planned

  • Basic structures. Think of models without the need for a database

Stack

Great for parsing and reversing orders

Planned

  • Stack

Queue

An expanded List data structure. Tailored to maintain order.

Planned

  • Queue
  • Priority queue