Faits :
A.
La société A._ Sàrl, dont l'associé gérant est B._, a pour but l'importation et la distribution de tous produits alimentaires, plus particulièrement d'origine italienne, ainsi que l'exploitation d'établissements publics ou de magasins de vente au détail.
B.
Le 18 décembre 2018, la société anonyme de droit public Chemins de fer fédéraux suisse CFF (ci-après: la société CFF) a informé les intéressés qu'elle renonçait à leur louer un local commercial situé dans un bâtiment lui appartenant et dont l'attribution avait été mise au concours en mai 2017. Saisie sur recours, la Chambre administrative de la Cour de justice de la République et canton de Genève (ci-après: la Cour de justice), par arrêt du 28 mai 2019, a déclaré le recours irrecevable, faute de compétence pour connaître du litige. Par arrêt du 8 juillet 2019 (arrêt 2C_640/2019), le Tribunal fédéral a déclaré irrecevable le recours déposé le 4 juillet 2019 par les intéressés contre l'arrêt de la Cour de justice, faute pour ceux-ci d'avoir respecté l'<ref-law> en ne s'attaquant pas à toutes les motivations figurant dans l'arrêt entrepris.
C.
Par acte du 16 décembre 2019, la société A._ Sàrl et B._ demandent au Tribunal fédéral la révision de l'arrêt 2C_640/2019 du 8 juillet 2019. Ils concluent à l'annulation de l'arrêt du Tribunal fédéral dont ils demandent la révision et à l'admission de leur recours du 4 juillet 2019, interjeté à l'encontre de l'arrêt de la Cour de justice du 28 mai 2019.
La Cour de justice renonce à se déterminer. La société CFF conclut implicitement au rejet de la demande de révision.

Considérant en droit :
1.
La demande de révision fondée, comme en l'espèce, sur l'art. 121 let. d LTF doit être déposée dans les 90 jours qui suivent la découverte du motif de révision, mais au plus tôt cependant dès la notification de l'expédition complète de l'arrêt ou dès la clôture de la procédure pénale (art. 124 al. 1 let. d LTF). Elle est soumise aux exigences de motivation découlant de l'art. 42 al. 1 et 2 LTF (arrêt 2F_3/2019 du 23 juillet 2019 consid. 1 et les références).
La présente demande de révision a été déposée en temps utile et est fondée sur des motifs prévus par la loi. Elle est donc recevable au regard de ces dispositions.
2.
Aux termes de l'art. 121 let. d LTF, la révision d'un arrêt du Tribunal fédéral peut être demandée si, par inadvertance, le tribunal n'a pas pris en considération des faits pertinents qui ressortent du dossier. Ce motif de révision vise le cas où le Tribunal fédéral a statué en se fondant sur un état de fait incomplet ou différent de celui qui résultait du dossier. L'inadvertance implique une erreur et consiste soit à méconnaître soit à déformer un fait ou une pièce. Elle doit se rapporter au contenu même du fait, à sa perception par le tribunal, mais non pas à son appréciation juridique. Les faits doivent ressortir du dossier, à savoir non seulement de la décision attaquée, mais aussi de l'ensemble des actes de procédure comprenant le dossier complet de l'autorité cantonale ou inférieure et les mémoires et pièces adressés au Tribunal fédéral dans la mesure où ils sont recevables (arrêt 2F_8/2017 du 19 septembre 2017 consid. 3.2 et les références). L'inadvertance doit, en outre, porter sur un fait pertinent, c'est-à-dire susceptible d'entraîner une décision différente, plus favorable à la partie requérante (cf. <ref-ruling> consid. 3 p. 19). Encore faut-il, pour que l'on puisse parler d'inadvertance, que le Tribunal fédéral ait pu prendre en considération le fait important dont on lui reproche de ne pas avoir tenu compte. Or, lorsqu'il connaît d'un recours, le Tribunal fédéral statue sur la base des faits établis par l'autorité précédente (<ref-law>), à moins que le recourant ne parvienne à lui démontrer qu'une constatation déterminante de l'autorité cantonale a été établie de façon manifestement inexacte ou en violation du droit au sens de l'<ref-law> (<ref-law>). Dès lors, hormis ces exceptions, le Tribunal fédéral, lorsqu'il est saisi d'un recours, ne peut pas revoir l'état de fait de la décision attaquée. Partant, lorsque l'une de ces exceptions n'a pas été invoquée dans la procédure de recours, le Tribunal fédéral ne saurait se voir reprocher, dans la procédure de révision subséquente, de ne pas avoir rectifié par inadvertance une erreur affectant une constatation faite par les juges précédents (arrêt 4F_15/2017 du 30 novembre 2017 consid. 2.1 et les références).
3.
3.1. Dans son arrêt du 8 juillet 2019, le Tribunal fédéral a jugé que la Cour de justice avait déclaré le recours déposé devant elle irrecevable pour plusieurs raisons alternatives. Celles-ci étaient en l'occurrence le fait que la société CFF n'était pas une autorité administrative genevoise dont les décisions pouvaient être portées devant les autorités judiciaires de ce canton; le fait que le pouvoir de décision dont serait investie la société CFF découlait de la loi fédérale sur les marchés publics qui prévoyait une voie de recours au Tribunal administratif fédéral; le fait que les droits procéduraux de la loi fédérale sur le marché intérieur ne trouvaient pas d'application; le fait que, même en cas de convention entre la société CFF et le canton de Genève en vue de l'attribution d'un marché public, le litige serait de la compétence du Tribunal administratif fédéral. Le Tribunal fédéral a ensuite rappelé que l'une des motivations était fondée sur le constat que la société CFF n'était pas une autorité administrative genevoise au sens de la procédure administrative cantonale. Constatant que cette motivation était de nature à sceller le sort de la cause et que les requérants n'avaient pas démontré que cette motivation était contraire au droit, il a déclaré leur recours irrecevable (cf. <ref-ruling> consid. 4.1.4 p. 100 quant à la jurisprudence relative à l'obligation de motivation de la partie recourante lorsque l'arrêt entrepris comporte plusieurs motivations toutes suffisantes pour sceller le sort du litige).
3.2. Dans leur demande de révision, les requérants relèvent que dans son arrêt du 28 mai 2019, la Cour de justice a retenu en particulier quatre éléments. Premièrement que la voie du recours dont les requérants se prévalaient ne concernait que les marchés genevois, condition qui n'était pas remplie par un éventuel marché créé par une entité fédérale. Deuxièmement que les éléments invoqués ne permettaient pas de retenir que le canton participerait à la construction de l'immeuble dans lequel se trouveront les surfaces commerciales litigieuses. Troisièmement que le Tribunal administratif fédéral était en tout état l'autorité compétente pour traiter du recours dès lors qu'il s'était déjà déclaré compétent pour examiner les recours contre les décisions d'adjudication dans le cadre d'un précédent marché public. Finalement que les actes d'enquêtes demandés par les requérants n'étaient pas pertinents. Ils expliquent que " ces quatre points ne constituaient pas des conditions cumulatives de recevabilité du recours, scellant chacun le sort de la cause " ( sic). Les requérants tentent ensuite de démontrer que c'est à tort que le Tribunal fédéral a considéré qu'il était question de motivations indépendantes toutes susceptibles de sceller le sort du litige. Ils se fondent en particulier sur une disposition du droit de procédure cantonale qu'ils reprochent au Tribunal fédéral d'avoir ignorée.
3.3. En l'espèce, sous couvert d'inadvertance du Tribunal fédéral quant à la prise en considération de faits pertinents, les requérants font en réalité valoir une mauvaise appréciation de la portée juridique des faits établis et pris en compte dans l'arrêt 2C_640/2019 du 8 juillet 2019. Le Tribunal fédéral a en effet relevé l'existence des faits mentionnés par les requérants. Ceux-ci ne font pas valoir d'éléments de fait pertinents qui auraient été retenus par la Cour de justice est qui n'auraient pas été pris en compte par le Tribunal fédéral. Au contraire, ils reprochent en particulier à celui-ci d'avoir méconnu une disposition légale (de surcroît cantonale), ce qui démontre que c'est d'une application du droit dont ils se plaignent en réalité. Le Tribunal fédéral a bien pris en compte l'ensemble des faits figurant dans l'arrêt de la Cour de justice et en a fait une appréciation juridique qui l'a amené à retenir que cette autorité avait présenté plusieurs motivations (non pas cumulatives, mais alternatives), scellant toutes le sort du litige. Une telle déduction de la part du Tribunal fédéral, qu'elle soit juste ou fausse, ne constitue pas une inadvertance au sens de l'art. 121 let. d LTF (<ref-ruling> consid. 3 p. 18 s. et les références; arrêts 9F_1/2018 du 22 mars 2018 consid. 2; 2F_20/2012 du 25 septembre 2012 consid. 2.1). Pour cette raison, la demande de révision doit être rejetée (arrêt 2F_12/2014 du 12 février 2015 consid. 1.2 et les références).
4.
Succombant, les requérants supportent les frais judiciaires, solidairement entre eux (art. 66 al. 1 et 5 LTF). Il n'est pas alloué de dépens (art. 68 al. 1 et 3 LTF).

Par ces motifs, le Tribunal fédéral prononce :
1.
La demande de révision est rejetée.
2.
Les frais judiciaires, arrêtés à 2'000 fr., sont mis à la charge des requérants, solidairement entre eux.
3.
Le présent arrêt est communiqué aux mandataires des requérants et de l'intimée, ainsi qu'à la Chambre administrative de la Cour de justice de la République et canton de Genève.
Lausanne, le 7 février 2020
Au nom de la IIe Cour de droit public
du Tribunal fédéral suisse
Le Président : Seiler
Le Greffier : Tissot-Daguette