    Add an AffineExpr matcher
    Add an AffineExpr matcher

    This CL gives a pattern-matching-y look and feel to AffineExpr.
    For now this uses a shared_ptr instead of unique'ing into a bumpPtrAllocator.
    SDBM gives a simple use case with more idiomatic syntax for matchers.

--

PiperOrigin-RevId: 248188075

yongtang/tensorflow,gautam1858/tensorflow,yongtang/tensorflow,ppwwyyxx/tensorflow,adit-chandra/tensorflow,frreiss/tensorflow-fred,Intel-Corporation/tensorflow,ppwwyyxx/tensorflow,gunan/tensorflow,davidzchen/tensorflow,tensorflow/tensorflow-pywrap_saved_model,adit-chandra/tensorflow,ppwwyyxx/tensorflow,aam-at/tensorflow,davidzchen/tensorflow,DavidNorman/tensorflow,karllessard/tensorflow,tensorflow/tensorflow-pywrap_tf_optimizer,renyi533/tensorflow,aldian/tensorflow,davidzchen/tensorflow,DavidNorman/tensorflow,gautam1858/tensorflow,Intel-tensorflow/tensorflow,Intel-tensorflow/tensorflow,Intel-Corporation/tensorflow,annarev/tensorflow,gunan/tensorflow,freedomtan/tensorflow,petewarden/tensorflow,freedomtan/tensorflow,paolodedios/tensorflow,tensorflow/tensorflow-experimental_link_static_libraries_once,tensorflow/tensorflow-pywrap_saved_model,tensorflow/tensorflow-pywrap_tf_optimizer,davidzchen/tensorflow,xzturn/tensorflow,cxxgtxy/tensorflow,tensorflow/tensorflow-experimental_link_static_libraries_once,paolodedios/tensorflow,renyi533/tensorflow,adit-chandra/tensorflow,annarev/tensorflow,xzturn/tensorflow,freedomtan/tensorflow,sarvex/tensorflow,jhseu/tensorflow,Intel-tensorflow/tensorflow,frreiss/tensorflow-fred,annarev/tensorflow,arborh/tensorflow,cxxgtxy/tensorflow,aam-at/tensorflow,DavidNorman/tensorflow,Intel-tensorflow/tensorflow,freedomtan/tensorflow,Intel-Corporation/tensorflow,annarev/tensorflow,petewarden/tensorflow,freedomtan/tensorflow,aldian/tensorflow,petewarden/tensorflow,Intel-tensorflow/tensorflow,Intel-Corporation/tensorflow,tensorflow/tensorflow-pywrap_tf_optimizer,freedomtan/tensorflow,ppwwyyxx/tensorflow,sarvex/tensorflow,davidzchen/tensorflow,aam-at/tensorflow,renyi533/tensorflow,tensorflow/tensorflow-experimental_link_static_libraries_once,aldian/tensorflow,aam-at/tensorflow,annarev/tensorflow,paolodedios/tensorflow,petewarden/tensorflow,arborh/tensorflow,petewarden/tensorflow,jhseu/tensorflow,adit-chandra/tensorflow,yongtang/tensorflow,petewarden/tensorflow,aldian/tensorflow,DavidNorman/tensorflow,paolodedios/tensorflow,paolodedios/tensorflow,frreiss/tensorflow-fred,Intel-Corporation/tensorflow,sarvex/tensorflow,arborh/tensorflow,tensorflow/tensorflow-pywrap_tf_optimizer,paolodedios/tensorflow,freedomtan/tensorflow,tensorflow/tensorflow-experimental_link_static_libraries_once,annarev/tensorflow,DavidNorman/tensorflow,yongtang/tensorflow,cxxgtxy/tensorflow,arborh/tensorflow,davidzchen/tensorflow,renyi533/tensorflow,tensorflow/tensorflow-pywrap_saved_model,karllessard/tensorflow,frreiss/tensorflow-fred,tensorflow/tensorflow-experimental_link_static_libraries_once,aam-at/tensorflow,karllessard/tensorflow,adit-chandra/tensorflow,Intel-tensorflow/tensorflow,paolodedios/tensorflow,annarev/tensorflow,gunan/tensorflow,petewarden/tensorflow,karllessard/tensorflow,frreiss/tensorflow-fred,xzturn/tensorflow,arborh/tensorflow,jhseu/tensorflow,tensorflow/tensorflow-pywrap_saved_model,gunan/tensorflow,Intel-Corporation/tensorflow,davidzchen/tensorflow,gunan/tensorflow,sarvex/tensorflow,aam-at/tensorflow,DavidNorman/tensorflow,aldian/tensorflow,tensorflow/tensorflow,tensorflow/tensorflow-pywrap_tf_optimizer,gautam1858/tensorflow,tensorflow/tensorflow,gautam1858/tensorflow,aam-at/tensorflow,cxxgtxy/tensorflow,yongtang/tensorflow,paolodedios/tensorflow,DavidNorman/tensorflow,gautam1858/tensorflow,karllessard/tensorflow,arborh/tensorflow,jhseu/tensorflow,freedomtan/tensorflow,jhseu/tensorflow,ppwwyyxx/tensorflow,DavidNorman/tensorflow,arborh/tensorflow,frreiss/tensorflow-fred,tensorflow/tensorflow,tensorflow/tensorflow-experimental_link_static_libraries_once,tensorflow/tensorflow,tensorflow/tensorflow,aam-at/tensorflow,ppwwyyxx/tensorflow,DavidNorman/tensorflow,renyi533/tensorflow,cxxgtxy/tensorflow,tensorflow/tensorflow-experimental_link_static_libraries_once,aldian/tensorflow,tensorflow/tensorflow-experimental_link_static_libraries_once,freedomtan/tensorflow,Intel-Corporation/tensorflow,frreiss/tensorflow-fred,tensorflow/tensorflow-pywrap_saved_model,xzturn/tensorflow,frreiss/tensorflow-fred,xzturn/tensorflow,DavidNorman/tensorflow,tensorflow/tensorflow,davidzchen/tensorflow,yongtang/tensorflow,arborh/tensorflow,karllessard/tensorflow,jhseu/tensorflow,gunan/tensorflow,aldian/tensorflow,davidzchen/tensorflow,arborh/tensorflow,DavidNorman/tensorflow,renyi533/tensorflow,sarvex/tensorflow,jhseu/tensorflow,sarvex/tensorflow,davidzchen/tensorflow,yongtang/tensorflow,tensorflow/tensorflow-experimental_link_static_libraries_once,frreiss/tensorflow-fred,adit-chandra/tensorflow,jhseu/tensorflow,gautam1858/tensorflow,renyi533/tensorflow,ppwwyyxx/tensorflow,adit-chandra/tensorflow,petewarden/tensorflow,tensorflow/tensorflow-pywrap_tf_optimizer,tensorflow/tensorflow,aam-at/tensorflow,frreiss/tensorflow-fred,arborh/tensorflow,davidzchen/tensorflow,karllessard/tensorflow,gautam1858/tensorflow,ppwwyyxx/tensorflow,gunan/tensorflow,petewarden/tensorflow,tensorflow/tensorflow-pywrap_saved_model,karllessard/tensorflow,gunan/tensorflow,Intel-tensorflow/tensorflow,tensorflow/tensorflow-pywrap_tf_optimizer,freedomtan/tensorflow,tensorflow/tensorflow-pywrap_saved_model,ppwwyyxx/tensorflow,xzturn/tensorflow,tensorflow/tensorflow-experimental_link_static_libraries_once,cxxgtxy/tensorflow,aam-at/tensorflow,annarev/tensorflow,frreiss/tensorflow-fred,tensorflow/tensorflow-pywrap_tf_optimizer,ppwwyyxx/tensorflow,tensorflow/tensorflow-pywrap_saved_model,xzturn/tensorflow,davidzchen/tensorflow,gunan/tensorflow,gunan/tensorflow,paolodedios/tensorflow,tensorflow/tensorflow-pywrap_tf_optimizer,jhseu/tensorflow,tensorflow/tensorflow-experimental_link_static_libraries_once,gautam1858/tensorflow,freedomtan/tensorflow,tensorflow/tensorflow-pywrap_saved_model,renyi533/tensorflow,annarev/tensorflow,aam-at/tensorflow,yongtang/tensorflow,tensorflow/tensorflow-pywrap_saved_model,yongtang/tensorflow,adit-chandra/tensorflow,frreiss/tensorflow-fred,adit-chandra/tensorflow,renyi533/tensorflow,xzturn/tensorflow,tensorflow/tensorflow-pywrap_saved_model,tensorflow/tensorflow-pywrap_tf_optimizer,xzturn/tensorflow,DavidNorman/tensorflow,ppwwyyxx/tensorflow,karllessard/tensorflow,tensorflow/tensorflow-pywrap_tf_optimizer,tensorflow/tensorflow,gautam1858/tensorflow,tensorflow/tensorflow,ppwwyyxx/tensorflow,tensorflow/tensorflow,karllessard/tensorflow,cxxgtxy/tensorflow,adit-chandra/tensorflow,gunan/tensorflow,gautam1858/tensorflow,Intel-tensorflow/tensorflow,karllessard/tensorflow,petewarden/tensorflow,sarvex/tensorflow,aam-at/tensorflow,adit-chandra/tensorflow,cxxgtxy/tensorflow,yongtang/tensorflow,Intel-tensorflow/tensorflow,paolodedios/tensorflow,yongtang/tensorflow,gautam1858/tensorflow,annarev/tensorflow,xzturn/tensorflow,renyi533/tensorflow,xzturn/tensorflow,gunan/tensorflow,Intel-tensorflow/tensorflow,tensorflow/tensorflow,aldian/tensorflow,sarvex/tensorflow,Intel-Corporation/tensorflow,xzturn/tensorflow,jhseu/tensorflow,gautam1858/tensorflow,annarev/tensorflow,paolodedios/tensorflow,renyi533/tensorflow,renyi533/tensorflow,arborh/tensorflow,freedomtan/tensorflow,jhseu/tensorflow,Intel-tensorflow/tensorflow,jhseu/tensorflow,petewarden/tensorflow,petewarden/tensorflow,adit-chandra/tensorflow,arborh/tensorflow