ShawnClake / DataStructures-Plugin

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

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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

About

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

License:MIT License


Languages

Language:PHP 100.0%