In the lexicon of graphs, a Thing is a "node". A Thing can represent anything, physical object, attribute, word, action, etc.
More...
|
static implicit | operator Thing (string label) |
| This is the magic which allows for strings to be put in place of Things for any method Paramter.
|
|
int | useCount = 0 |
DateTime | lastFiredTime = new() |
|
static Thing | HasChild [get] |
IList< Relationship > | RelationshipsNoCount [get] |
| Only used by the tree control.
|
List< Relationship > | RelationshipsWriteable [get] |
| Get an "unsafe" writeable list of a Thing's Relationships. This list may change while it is in use and so should not be used as a foreach iterator.
|
IList< Relationship > | RelationshipsFrom [get] |
| Get a "safe" list of relationships which target this Thing.
|
List< Relationship > | RelationshipsFromWriteable [get] |
| Get an "unsafe" writeable list of Relationships which target this Thing.
|
List< Relationship > | RelationshipsAsTypeWriteable [get] |
| Get an "unsafe" writeable list of Relationships for which this Thing is the relationship type.
|
object | V [get, set] |
| Any serializable object can be attached to a Thing.
|
string | Label [get, set] |
| Manages a Thing's label and maintais a hash table.
|
IList< Thing > | Parents [get] |
| "Safe" list of direct ancestors
|
IList< Thing > | Children [get] |
| "Safe" list of direct descendants
|
IList< Thing > | ChildrenWithSubclasses [get] |
IList< Relationship > | Relationships [get] |
| Full "Safe" list or relationships.
|
IEnumerable< Thing > | Ancestors [get] |
| Recursively gets all the ancestors of a Thing.
|
IEnumerable< Thing > | Descendents [get] |
| Recursively gets all descendents of a Thing. Use with caution as this might be a large list.
|
In the lexicon of graphs, a Thing is a "node". A Thing can represent anything, physical object, attribute, word, action, etc.
Things often have labels which are any string. Like comments, these are typically used for programmer convenience and are not usually used for functionality. Labels are case-insensitive although the initial case is preserved within the UKS. Methods which return a Thing may return null in the event no Thing matches the result of the method. Methods which return lists of Things will return a list of zero elements if no Things match the result of the method. A Thing may be referenced by its Label. You can write AddParent("color") [where a Thing is a required parameter.] The system sill automatically retreive a Thing with the given label or throw an exception if none exists.
◆ AddParent()
void UKS.Thing.AddParent |
( |
Thing | newParent | ) |
|
|
inline |
Addsa a parent to a Thing.
- Parameters
-
◆ AddRelationship()
Adds a relationship to a Thing if it does not already exist. The Thing is the source of the relationship.
- Parameters
-
target | Target Thing |
relationshipType | RelatinoshipType Thing |
- Returns
- the new or existing Relationship
◆ DescendentsList()
IList< Thing > UKS.Thing.DescendentsList |
( |
| ) |
|
|
inline |
Returns a list of all of a thing's descendandants. CAUTION: this may be large and time-consuming.
- Returns
◆ GetDescendentsCount()
int UKS.Thing.GetDescendentsCount |
( |
| ) |
|
|
inline |
Determines how many descendants a Thing has.
- Returns
- the count
◆ HasAncestor()
bool UKS.Thing.HasAncestor |
( |
Thing | t | ) |
|
|
inline |
Determines whether a Thing has a specific ancestor.
- Parameters
-
- Returns
◆ HasAncestorLabeled()
bool UKS.Thing.HasAncestorLabeled |
( |
string | label | ) |
|
|
inline |
Determines whether a Thing has a specific ancestor.
- Parameters
-
- Returns
◆ operator Thing()
implicit UKS.Thing.operator Thing |
( |
string | label | ) |
|
|
inlinestatic |
This is the magic which allows for strings to be put in place of Things for any method Paramter.
- Parameters
-
Throse
◆ RemoveParent()
void UKS.Thing.RemoveParent |
( |
Thing | t | ) |
|
|
inline |
Remove a parent from a Thing.
- Parameters
-
t | If the Thing is not a parent, the function does nothing |
◆ RemoveRelationship()
Removes a relationship.
- Parameters
-
◆ ToString() [1/2]
override string UKS.Thing.ToString |
( |
| ) |
|
|
inline |
Returns a Thing's label. Even though it shows zero references, don't delete this ToString() because the debugger uses it when mousing over a Thing.
- Returns
- the Thing's label
◆ ToString() [2/2]
string UKS.Thing.ToString |
( |
bool | showProperties = false | ) |
|
|
inline |
Formats a displayable Thing as a string.
- Parameters
-
showProperties | Appends a parenthetical list of relationships to the label |
- Returns
- The string to display
The documentation for this class was generated from the following file: