OpenSim
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Static Protected Attributes | Properties | List of all members
OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore Class Reference
Inheritance diagram for OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore:
Inheritance graph
[legend]

Classes

class  TakeValueCallbackClass
 

Public Member Functions

 JsonStore ()
 
 JsonStore (string value)
 
JsonStoreNodeType GetNodeType (string expr)
 
JsonStoreValueType GetValueType (string expr)
 
int ArrayLength (string expr)
 
bool GetValue (string expr, out string value, bool useJson)
 
bool RemoveValue (string expr)
 
bool SetValue (string expr, string value, bool useJson)
 
bool TakeValue (string expr, bool useJson, TakeValueCallback cback)
 
bool ReadValue (string expr, bool useJson, TakeValueCallback cback)
 

Static Public Member Functions

static bool CanonicalPathExpression (string ipath, out string opath)
 

Protected Member Functions

bool SetValueFromExpression (string expr, OSD ovalue)
 
bool InvokeNextCallback (string pexpr)
 

Static Protected Member Functions

static bool ParsePathExpression (string expr, out Stack< string > path)
 Parse the path expression and put the components into a stack. We use a stack because we process the path in inverse order later More...
 
static OSD ProcessPathExpression (OSD map, Stack< string > path)
 
static bool ConvertOutputValue (OSD result, out string value, bool useJson)
 
static string PathExpressionToKey (Stack< string > path)
 
static bool OSDBaseType (OSDType type)
 
static int ComputeSizeOf (OSD value)
 

Protected Attributes

List< TakeValueCallbackClassm_TakeStore
 
List< TakeValueCallbackClassm_ReadStore
 

Static Protected Attributes

static Regex m_ParsePassOne = new Regex("({[^}]+}|\\[[0-9]+\\]|\\[\\+\\])")
 
static Regex m_ParsePassThree = new Regex("(?<!{[^}]*)\\.([a-zA-Z]+)(?=\\.)")
 
static Regex m_ParsePassFour = new Regex("\\.+")
 
static Regex m_ValidatePath = new Regex("^\\.(({[^}]+}|\\[[0-9]+\\]|\\[\\+\\])\\.)*$")
 
static Regex m_PathComponent = new Regex("\\.({[^}]+}|\\[[0-9]+\\]|\\[\\+\\])")
 
static Regex m_SimpleArrayPattern = new Regex("^\\[([0-9]+)\\]$")
 
static Regex m_ArrayPattern = new Regex("^\\[([0-9]+|\\+)\\]$")
 
static Regex m_HashPattern = new Regex("^{([^}]+)}$")
 

Properties

virtual OSD ValueStore [get, set]
 
int StringSpace [get, set]
 This is a simple estimator for the size of the stored data, it is not precise, but should be close enough to implement reasonable limits on the storage space used More...
 

Detailed Description

Definition at line 47 of file JsonStore.cs.

Constructor & Destructor Documentation

OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.JsonStore ( )
inline

Definition at line 125 of file JsonStore.cs.

OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.JsonStore ( string  value)
inline

Definition at line 132 of file JsonStore.cs.

Member Function Documentation

int OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.ArrayLength ( string  expr)
inline

Definition at line 213 of file JsonStore.cs.

static bool OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.CanonicalPathExpression ( string  ipath,
out string  opath 
)
inlinestatic

Definition at line 107 of file JsonStore.cs.

Here is the caller graph for this function:

static int OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.ComputeSizeOf ( OSD  value)
inlinestaticprotected

Definition at line 711 of file JsonStore.cs.

static bool OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.ConvertOutputValue ( OSD  result,
out string  value,
bool  useJson 
)
inlinestaticprotected

Definition at line 625 of file JsonStore.cs.

JsonStoreNodeType OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.GetNodeType ( string  expr)
inline

Definition at line 148 of file JsonStore.cs.

bool OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.GetValue ( string  expr,
out string  value,
bool  useJson 
)
inline

Definition at line 234 of file JsonStore.cs.

JsonStoreValueType OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.GetValueType ( string  expr)
inline

Definition at line 176 of file JsonStore.cs.

bool OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.InvokeNextCallback ( string  pexpr)
inlineprotected

Definition at line 489 of file JsonStore.cs.

static bool OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.OSDBaseType ( OSDType  type)
inlinestaticprotected

Definition at line 684 of file JsonStore.cs.

static bool OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.ParsePathExpression ( string  expr,
out Stack< string >  path 
)
inlinestaticprotected

Parse the path expression and put the components into a stack. We use a stack because we process the path in inverse order later

Definition at line 522 of file JsonStore.cs.

static string OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.PathExpressionToKey ( Stack< string >  path)
inlinestaticprotected

Definition at line 667 of file JsonStore.cs.

static OSD OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.ProcessPathExpression ( OSD  map,
Stack< string >  path 
)
inlinestaticprotected

path is a stack where the top level of the path is at the bottom of the stack

Definition at line 557 of file JsonStore.cs.

bool OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.ReadValue ( string  expr,
bool  useJson,
TakeValueCallback  cback 
)
inline

Definition at line 338 of file JsonStore.cs.

bool OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.RemoveValue ( string  expr)
inline

Definition at line 253 of file JsonStore.cs.

bool OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.SetValue ( string  expr,
string  value,
bool  useJson 
)
inline

Definition at line 263 of file JsonStore.cs.

bool OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.SetValueFromExpression ( string  expr,
OSD  ovalue 
)
inlineprotected

Definition at line 371 of file JsonStore.cs.

bool OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.TakeValue ( string  expr,
bool  useJson,
TakeValueCallback  cback 
)
inline

Definition at line 304 of file JsonStore.cs.

Member Data Documentation

Regex OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.m_ArrayPattern = new Regex("^\\[([0-9]+|\\+)\\]$")
staticprotected

Definition at line 88 of file JsonStore.cs.

Regex OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.m_HashPattern = new Regex("^{([^}]+)}$")
staticprotected

Definition at line 91 of file JsonStore.cs.

Regex OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.m_ParsePassFour = new Regex("\\.+")
staticprotected

Definition at line 78 of file JsonStore.cs.

Regex OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.m_ParsePassOne = new Regex("({[^}]+}|\\[[0-9]+\\]|\\[\\+\\])")
staticprotected

Definition at line 72 of file JsonStore.cs.

Regex OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.m_ParsePassThree = new Regex("(?<!{[^}]*)\\.([a-zA-Z]+)(?=\\.)")
staticprotected

Definition at line 75 of file JsonStore.cs.

Regex OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.m_PathComponent = new Regex("\\.({[^}]+}|\\[[0-9]+\\]|\\[\\+\\])")
staticprotected

Definition at line 84 of file JsonStore.cs.

List<TakeValueCallbackClass> OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.m_ReadStore
protected

Definition at line 69 of file JsonStore.cs.

Regex OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.m_SimpleArrayPattern = new Regex("^\\[([0-9]+)\\]$")
staticprotected

Definition at line 87 of file JsonStore.cs.

List<TakeValueCallbackClass> OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.m_TakeStore
protected

Definition at line 68 of file JsonStore.cs.

Regex OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.m_ValidatePath = new Regex("^\\.(({[^}]+}|\\[[0-9]+\\]|\\[\\+\\])\\.)*$")
staticprotected

Definition at line 81 of file JsonStore.cs.

Property Documentation

int OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.StringSpace
getset

This is a simple estimator for the size of the stored data, it is not precise, but should be close enough to implement reasonable limits on the storage space used

Definition at line 100 of file JsonStore.cs.

virtual OSD OpenSim.Region.OptionalModules.Scripting.JsonStore.JsonStore.ValueStore
getsetprotected

Definition at line 52 of file JsonStore.cs.


The documentation for this class was generated from the following file: