How to access the value of a Drupal\Core\StringTranslation\TranslatableMarkup object within a form? I tried this : dpm($button['#value']-&gt;string
but got this error:
 access protected property Drupal\Core\StringTranslation\TranslatableMarkup::$string 

Within a form object I need to be able to read that value and also change it.  how can I access it? 
thanks
You can get the string value by calling the magic function -&gt;__tostring() or casting the object to a (string). But most time you don't need to do this, because if you use the translation object in a string context it will return the translated string automatically.

You can't change the original string in the translation object. You have to generate a new one with the t-function:

$button['#value'] = $this-&gt;t('new text');