original_string: protected function getContextualConcrete($abstract)
      {
          if (! is_null($binding = $this->findInContextualBindings($abstract))) {
              return $binding;
          }
  
          // Next we need to see if a contextual binding might be bound under an alias of the
          // given abstract type. So, we will need to check if any aliases exist with this
          // type and then spin through them and check for contextual bindings on these.
          if (empty($this->abstractAliases[$abstract])) {
              return;
          }
  
          foreach ($this->abstractAliases[$abstract] as $alias) {
              if (! is_null($binding = $this->findInContextualBindings($alias))) {
                  return $binding;
              }
          }
      }
code: protected function getContextualConcrete($abstract)
      {
          if (! is_null($binding = $this->findInContextualBindings($abstract))) {
              return $binding;
          }
  
          // Next we need to see if a contextual binding might be bound under an alias of the
          // given abstract type. So, we will need to check if any aliases exist with this
          // type and then spin through them and check for contextual bindings on these.
          if (empty($this->abstractAliases[$abstract])) {
              return;
          }
  
          foreach ($this->abstractAliases[$abstract] as $alias) {
              if (! is_null($binding = $this->findInContextualBindings($alias))) {
                  return $binding;
              }
          }
      }
code_tokens: protected function getContextualConcrete ( $ abstract ) { if ( ! is_null ( $ binding = $ this -> findInContextualBindings ( $ abstract ) ) ) { return $ binding ; } // Next we need to see if a contextual binding might be bound under an alias of the // given abstract type. So, we will need to check if any aliases exist with this // type and then spin through them and check for contextual bindings on these. if ( empty ( $ this -> abstractAliases [ $ abstract ] ) ) { return ; } foreach ( $ this -> abstractAliases [ $ abstract ] as $ alias ) { if ( ! is_null ( $ binding = $ this -> findInContextualBindings ( $ alias ) ) ) { return $ binding ; } } }
docstring: Get the contextual concrete binding for the given abstract.
  
  @param  string  $abstract
  @return \Closure|string|null
docstring_tokens: Get the contextual concrete binding for the given abstract .