public EditorProp(SerializedObject serializedObject)
 {
     this.serializedObject = serializedObject;
     this.baseObject       = this;
     editorPropType        = EditorPropType.SO;
     errored = serializedObject == null;
 }
 bool CheckEditorPropType(EditorPropType shouldBe)
 {
     if (errored)
     {
         Debug.LogError(displayName + " is errored");
         return(false);
     }
     if (shouldBe != editorPropType)
     {
         Debug.LogError(displayName + "(" + editorPropType.ToString() + ") isnt type: " + shouldBe.ToString());
         return(false);
     }
     return(true);
 }
 EditorProp(SerializedProperty property, EditorProp baseObject)
 {
     this.property   = property;
     this.baseObject = baseObject;
     editorPropType  = EditorPropType.Property;
     errored         = property == null;
     if (!errored)
     {
         if (property.isArray && property.propertyType != SerializedPropertyType.String)
         {
             editorPropType = EditorPropType.Array;
             RebuildArray();
         }
     }
 }