/// <summary>
 /// Determines whether two tag list indices are equal.
 /// </summary>
 /// <param name="tagListIndex">The index to compare against the current index.</param>
 /// <returns>True if the specified index is equal to the current index; otherwise, false.</returns>
 public bool Equals(TagListIndex tagListIndex)
 {
     return(value == tagListIndex.value);
 }
 /// <summary>
 /// Retrieves a tag list given a tag list index from the runtime asset.
 /// </summary>
 /// <param name="tagListIndex">The tag list index.</param>
 /// <returns>Reference to the corresponding tag list for the index passed as argument.</returns>
 public ref TagList GetTagList(TagListIndex tagListIndex)
 {
     Assert.IsTrue(tagListIndex < numTagLists);
     return(ref tagLists[tagListIndex]);
 }
 /// <summary>
 /// Checks if a given trait belongs to a given trait list.
 /// </summary>
 /// <param name="tagListIndex">The tag list to check against.</param>
 /// <param name="traitIndex">The trait to check for.</param>
 /// <returns>True if the given trait belongs to the trait list, false otherwise.</returns>
 public bool Contains(TagListIndex tagListIndex, TraitIndex traitIndex)
 {
     return(Contains(ref GetTagList(tagListIndex), traitIndex));
 }