module Sprockets::Loader

def load_asset_by_id_uri(uri, filename, params)

def load_asset_by_id_uri(uri, filename, params)
  # Internal assertion, should be routed through load_asset_by_uri
  unless id = params.delete(:id)
    raise ArgumentError, "expected uri to have an id: #{uri}"
  end
  uri = build_asset_uri(filename, params)
  asset = load_asset_by_uri(uri, filename, params)
  if id && asset[:id] != id
    raise VersionNotFound, "could not find specified id: #{id}"
  end
  asset
end