INIT

 (Available in 00 TS Tools(Base) - TS_Tools_Atomizer)

Source

METHOD INIT( uoOwner, ucItem, ucValue ) CLASS TS_AtomizerItem
LOCAL cItem AS STRING
   TSTrace Enter CREATE
   DO CASE
   CASE SELF:_PSZItem<>NULL_PTR
      TSTrace Warning "SELF:_PSZItem<>NULL_PTR"
   CASE TS_IsInstanceOf( uoOwner, #TS_Atomizer )
      SELF:_Owner:=uoOwner
      IF ( IsString( ucItem ) .OR. IsNil( ucItem ) ) .AND. ( IsString( ucValue )  ; ...
     ... .OR. IsNil( ucValue ) )
         IF IsNil( ucItem )
            cItem:=TS_S_EMPTY
         ELSE
            cItem:=SClone( ucItem )
         END
         IF IsNil( ucValue )
            SELF:Value:=cItem
         ELSE
            SELF:Value:=SClone( ucValue )
         END
         IF LOGIC( _CAST, SLen( cItem ) )
            IF SELF:_Owner:IgnoreCase
               SELF:_PSZItem:=TS_StringAlloc( Upper( cItem )+ ; ...
              ... TS_C_NULL )
               IF SELF:_PSZItem==NULL_PTR
                  TSTrace Fatal "(SELF:_PSZItem:=TS_StringAlloc(Upper(cItem)+TS_C_NULL))==NULL_PTR"
               END
            ELSE
               SELF:_PSZItem:=TS_StringAlloc( cItem+TS_C_NULL  ; ...
              ... )
               IF SELF:_PSZItem==NULL_PTR
                  TSTrace Fatal "(SELF:_PSZItem:=TS_StringAlloc(cItem+TS_C_NULL))==NULL_PTR"
               END
            END
            SELF:_Len:=SLen( cItem )
            SELF:_FirstOfItem:=Asc( cItem )
            AAdd( SELF:_Owner:_ItemsCreated, SELF )
         ELSE
            SELF:_PSZItem:=@_TS_AtomizerTargetForNullPSZ
            SELF:_Len:=0U
            SELF:_FirstOfItem:=TS_ASC_NULL
            RegisterAxit( SELF )
         END
      ELSE
         TSTrace Warning "!((IsString(ucItem) .OR. IsNil(ucItem)) .AND. (IsString(ucValue) " ; ...
        ... +".OR. IsNil(ucValue)))"
         SELF:_PSZItem:=@_TS_AtomizerTargetForNullPSZ
         SELF:_Len:=0U
         SELF:_FirstOfItem:=TS_ASC_NULL
         RegisterAxit( SELF )
      END
   OTHERWISE
      TSTrace Warning "!TS_IsInstanceOf(uoOwner,#TS_Atomizer)"
      SELF:_Owner:=NULL_OBJECT
      SELF:_PSZItem:=@_TS_AtomizerTargetForNullPSZ
      SELF:_Len:=0U
      SELF:_FirstOfItem:=TS_ASC_NULL
      RegisterAxit( SELF )
   END
   TSTrace Leave
RETURN SELF