<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta http-equiv="x-ua-compatible" content="ie=edge">
<title></title>
<link
rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.5/css/bootstrap.min.css"
integrity="sha384-AysaV+vQoT3kOAXZkl02PThvDr8HYKPZhNT5h/CXfBThSRXQ6jW5DO2ekP5ViFdi"
crossorigin="anonymous"
>
<link
rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css"
>
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
<link
rel="stylesheet"
href="../../../../.././css/dottydoc.css"
>
<link
rel="stylesheet"
href="../../../../.././css/color-brewer.css"
>
<link
rel="stylesheet"
href="../../../../.././css/api-page.css"
>
</head>
<body>
<div id="content-wrapper">
<div class="index-wrapper">
<ul class="toc">
<li class="logo-li">
<a id="home-button" href="../../../../.././index.html">
<svg width="64px" height="109px" viewBox="0 0 64 109" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="logo-background" transform="translate(0.000000, 16.000000)" fill="#636363">
<path d="M0.5,59.5 C0.5,59.5 63.4,65.8 63.4,76.3 L63.4,51.1 C63.4,51.1 63.4,40.6 0.5,34.3 L0.5,59.5 L0.5,59.5 Z" id="logo-background-bottom"></path>
<path d="M0.5,25.9 C0.5,25.9 63.4,32.2 63.4,42.7 L63.4,17.5 C63.4,17.5 63.4,7 0.5,0.7 L0.5,10.5 L0.5,25.9 L0.5,25.9 Z" id="logo-background-top"></path>
</g>
<g id="logo-foreground" fill="#B6B6B6">
<path d="M0.5,109 L0.5,83.8 C0.5,83.8 63.4,77.5 63.4,67 L63.4,92.2 C63.5,92.3 63.5,102.7 0.5,109" id="Logo_Foreground_Bottom"></path>
<path d="M0.5,50.3 C0.5,50.3 63.4,44 63.4,33.5 L63.4,58.7 C63.4,58.7 63.4,69.2 0.5,75.5 L0.5,50.3 L0.5,50.3 Z" id="Logo_Foreground_Middle"></path>
<path d="M63.5,0 L63.5,25.2 C63.5,25.2 63.5,35.7 0.6,42 L0.6,16.7 C0.5,16.7 63.5,10.5 63.5,0" id="logo-foreground-top"></path>
</g>
<g id="dots" transform="translate(4.000000, 10.000000)" fill="#FFFFFF">
<g id="bottom" transform="translate(0.000000, 67.500000)">
<path d="M1.4471104,12.2885536 C1.45019313,12.2881864 1.45019313,12.2881864 1.45327704,12.2878189 C1.91768952,12.2324787 2.24930811,11.8111359 2.1939679,11.3467234 C2.13862768,10.8823109 1.71728488,10.5506923 1.2528724,10.6060325 C1.24980572,10.606398 1.24980572,10.606398 1.24674021,10.6067632 C0.782326598,10.6620939 0.450699376,11.0834299 0.506030077,11.5478435 C0.561360778,12.0122571 0.982696791,12.3438844 1.4471104,12.2885536 L1.4471104,12.2885536 Z M9.34858965,12.1304907 C9.35409106,12.129756 9.35409106,12.129756 9.35959333,12.129021 C10.1807278,12.019341 10.7574756,11.2647668 10.6477955,10.4436323 C10.5381155,9.62249789 9.78354128,9.04575011 8.96240683,9.15543014 C8.95693539,9.15616095 8.95693539,9.15616095 8.95146479,9.15689157 C8.13032806,9.26655457 7.55356464,10.0211168 7.66322765,10.8422536 C7.77289065,11.6633903 8.52745292,12.2401537 9.34858965,12.1304907 L9.34858965,12.1304907 Z M17.0066591,11.0493128 C17.0121188,11.0484984 17.0121188,11.0484984 17.0175789,11.0476838 C17.8369369,10.9254384 18.4020584,10.1621181 18.279813,9.34276003 C18.1575677,8.52340201 17.3942473,7.95828052 16.5748893,8.08052587 C16.5694641,8.08133528 16.5694641,8.08133528 16.5640392,8.08214454 C15.7446783,8.20437064 15.1795389,8.96767771 15.301765,9.78703861 C15.4239911,10.6063995 16.1872982,11.1715389 17.0066591,11.0493128 L17.0066591,11.0493128 Z M24.8225082,10.4232459 C24.8297684,10.4220275 24.8297684,10.4220275 24.8370287,10.420809 C25.922252,10.2386672 26.6543441,9.21126476 26.4722023,8.12604147 C26.2900605,7.04081818 25.2626581,6.30872601 24.1774348,6.49086783 C24.1702314,6.4920768 24.1702314,6.4920768 24.1630282,6.49328559 C23.0777996,6.67539597 22.3456777,7.70277717 22.5277881,8.78800574 C22.7098984,9.87323431 23.7372796,10.6053563 24.8225082,10.4232459 L24.8225082,10.4232459 Z M32.4725265,9.05261002 C33.5532108,8.84532993 34.2612448,7.80122849 34.0539647,6.72054419 C33.8466846,5.63985989 32.8025831,4.93182589 31.7218988,5.13910599 C31.714724,5.14048211 31.714724,5.14048211 31.7075489,5.14185807 C30.6268567,5.34909665 29.9187826,6.39317088 30.1260211,7.47386314 C30.3332597,8.5545554 31.3773339,9.26262952 32.4580262,9.05539095 C32.4652764,9.05400057 32.4652764,9.05400057 32.4725265,9.05261002 Z M39.8723866,6.89476879 C39.877909,6.8935242 39.877909,6.8935242 39.883431,6.89227947 C40.6915794,6.71010471 41.1990314,5.90728916 41.0168566,5.09914075 C40.8346818,4.29099233 40.0318663,3.78354042 39.2237179,3.96571517 C39.218279,3.96694116 39.218279,3.96694116 39.2128397,3.96816703 C38.404681,4.15029588 37.8971834,4.9530826 38.0793123,5.76124136 C38.2614411,6.56940012 39.0642279,7.07689764 39.8723866,6.89476879 L39.8723866,6.89476879 Z M47.4276119,5.00828445 C47.4329844,5.00678549 47.4329844,5.00678549 47.4383562,5.00528637 C48.2362896,4.78258973 48.7026111,3.95520561 48.4799145,3.15727221 C48.2572179,2.35933881 47.4298337,1.89301728 46.6319003,2.11571391 C46.6266645,2.1171751 46.6266645,2.1171751 46.6214279,2.11863616 C45.8234736,2.34125773 45.3570742,3.16859798 45.5796958,3.96655233 C45.8023173,4.76450667 46.6296576,5.23090603 47.4276119,5.00828445 L47.4276119,5.00828445 Z M54.419759,2.30643871 C54.8556933,2.13695884 55.0716973,1.6461737 54.9022174,1.21023941 C54.7327376,0.774305114 54.2419524,0.558301127 53.8060181,0.727780997 C53.8032127,0.728871549 53.8032127,0.728871549 53.8004064,0.729962021 C53.3644359,0.89934874 53.148327,1.39008772 53.3177137,1.82605822 C53.4871005,2.26202871 53.9778394,2.47813756 54.4138099,2.30875084 C54.4167849,2.30759485 54.4167849,2.30759485 54.419759,2.30643871 Z" id="Shape"></path>
<path d="M1.67760355,20.096503 C1.68306395,20.0958524 1.68306395,20.0958524 1.68852642,20.0952015 C2.51113381,19.9971782 3.09852524,19.2508595 3.00050189,18.4282521 C2.90247854,17.6056447 2.15615986,17.0182533 1.33355246,17.1162767 C1.3281205,17.1169239 1.3281205,17.1169239 1.3226906,17.1175709 C0.500081196,17.2155774 -0.0873255124,17.961884 0.0106809923,18.7844934 C0.108687497,19.6071028 0.854994145,20.1945095 1.67760355,20.096503 L1.67760355,20.096503 Z M9.34858965,19.1274206 C9.35409106,19.1266859 9.35409106,19.1266859 9.35959333,19.1259509 C10.1807278,19.0162709 10.7574756,18.2616967 10.6477955,17.4405622 C10.5381155,16.6194278 9.78354128,16.04268 8.96240683,16.15236 C8.95693539,16.1530908 8.95693539,16.1530908 8.95146479,16.1538215 C8.13032806,16.2634845 7.55356464,17.0180467 7.66322765,17.8391835 C7.77289065,18.6603202 8.52745292,19.2370836 9.34858965,19.1274206 L9.34858965,19.1274206 Z M17.1767435,18.6256231 C17.1839958,18.6245412 17.1839958,18.6245412 17.1912486,18.6234592 C18.27963,18.4610765 19.0303002,17.4471319 18.8679175,16.3587506 C18.7055348,15.2703693 17.6915903,14.519699 16.6032089,14.6820817 C16.5960024,14.6831569 16.5960024,14.6831569 16.5887964,14.6842319 C15.5004112,14.846589 14.7497172,15.8605159 14.9120743,16.948901 C15.0744314,18.0372862 16.0883584,18.7879802 17.1767435,18.6256231 L17.1767435,18.6256231 Z M24.8370287,17.4177379 C25.922252,17.2355961 26.6543441,16.2081937 26.4722023,15.1229704 C26.2900605,14.0377471 25.2626581,13.3056549 24.1774348,13.4877968 C24.1702314,13.4890057 24.1702314,13.4890057 24.1630282,13.4902145 C23.0777996,13.6723249 22.3456777,14.6997061 22.5277881,15.7849347 C22.7098984,16.8701632 23.7372796,17.6022852 24.8225082,17.4201748 C24.8297684,17.4189565 24.8297684,17.4189565 24.8370287,17.4177379 Z M32.4725265,16.061085 C33.5532108,15.853199 34.2612448,14.8060455 34.0539647,13.7222022 C33.8466846,12.6383589 32.8025831,11.9282552 31.7218988,12.1361412 C31.714724,12.1375214 31.714724,12.1375214 31.7075489,12.1389013 C30.6268567,12.3467457 29.9187826,13.3938719 30.1260211,14.4777232 C30.3332597,15.5615745 31.3773339,16.2717185 32.4580262,16.0638741 C32.4652764,16.0624797 32.4652764,16.0624797 32.4725265,16.061085 Z M40.0707225,14.4695476 C40.0780573,14.4678946 40.0780573,14.4678946 40.0853916,14.4662413 C41.158768,14.2242783 41.8327617,13.1579849 41.5907986,12.0846085 C41.3488355,11.011232 40.2825422,10.3372384 39.2091657,10.5792015 C39.2019419,10.5808298 39.2019419,10.5808298 39.1947175,10.582458 C38.1213273,10.8243601 37.447273,11.8906152 37.6891752,12.9640053 C37.9310773,14.0373955 38.9973324,14.7114498 40.0707225,14.4695476 L40.0707225,14.4695476 Z M47.4276119,12.0082845 C47.4329844,12.0067855 47.4329844,12.0067855 47.4383562,12.0052864 C48.2362896,11.7825897 48.7026111,10.9552056 48.4799145,10.1572722 C48.2572179,9.35933881 47.4298337,8.89301728 46.6319003,9.11571391 C46.6266645,9.1171751 46.6266645,9.1171751 46.6214279,9.11863616 C45.8234736,9.34125773 45.3570742,10.168598 45.5796958,10.9665523 C45.8023173,11.7645067 46.6296576,12.230906 47.4276119,12.0082845 L47.4276119,12.0082845 Z M54.8999721,9.57562965 C54.9052414,9.57358217 54.9052414,9.57358217 54.9105092,9.57153441 C55.6826371,9.27135123 56.0652239,8.40207131 55.7650408,7.62994336 C55.4648576,6.85781542 54.5955777,6.4752286 53.8234497,6.77541179 C53.8184808,6.77734338 53.8184808,6.77734338 53.8135101,6.77927482 C53.0413181,7.07929302 52.6585455,7.94849117 52.9585637,8.72068323 C53.2585819,9.4928753 54.12778,9.87564785 54.8999721,9.57562965 L54.8999721,9.57562965 Z" id="Shape"></path>
<path d="M1.45327704,26.6978168 C1.54647464,26.6867112 1.63432439,26.660866 1.7147722,26.6228911 C2.03520341,26.4716332 2.23820252,26.1279362 2.1939679,25.7567213 C2.13862768,25.2923089 1.71728488,24.9606903 1.2528724,25.0160305 C1.24980572,25.0163959 1.24980572,25.0163959 1.24674021,25.0167611 C0.782326598,25.0720918 0.450699376,25.4934278 0.506030077,25.9578415 C0.561360778,26.4222551 0.982696791,26.7538823 1.4471104,26.6985516 C1.45019313,26.6981843 1.45019313,26.6981843 1.45327704,26.6978168 Z M9.34858965,26.1274206 C9.35409106,26.1266859 9.35409106,26.1266859 9.35959333,26.1259509 C10.1807278,26.0162709 10.7574756,25.2616967 10.6477955,24.4405622 C10.5381155,23.6194278 9.78354128,23.04268 8.96240683,23.15236 C8.95693539,23.1530908 8.95693539,23.1530908 8.95146479,23.1538215 C8.13032806,23.2634845 7.55356464,24.0180467 7.66322765,24.8391835 C7.77289065,25.6603202 8.52745292,26.2370836 9.34858965,26.1274206 L9.34858965,26.1274206 Z M17.0066591,25.0462427 C17.0121188,25.0454283 17.0121188,25.0454283 17.0175789,25.0446136 C17.8369369,24.9223683 18.4020584,24.1590479 18.279813,23.3396899 C18.1575677,22.5203319 17.3942473,21.9552104 16.5748893,22.0774558 C16.5694641,22.0782652 16.5694641,22.0782652 16.5640392,22.0790744 C15.7446783,22.2013005 15.1795389,22.9646076 15.301765,23.7839685 C15.4239911,24.6033294 16.1872982,25.1684688 17.0066591,25.0462427 L17.0066591,25.0462427 Z M24.8225082,24.4201748 C24.8297684,24.4189565 24.8297684,24.4189565 24.8370287,24.4177379 C25.922252,24.2355961 26.6543441,23.2081937 26.4722023,22.1229704 C26.2900605,21.0377471 25.2626581,20.3056549 24.1774348,20.4877968 C24.1702314,20.4890057 24.1702314,20.4890057 24.1630282,20.4902145 C23.0777996,20.6723249 22.3456777,21.6997061 22.5277881,22.7849347 C22.7098984,23.8701632 23.7372796,24.6022852 24.8225082,24.4201748 L24.8225082,24.4201748 Z M32.4725265,23.0495399 C33.5532108,22.8422598 34.2612448,21.7981584 34.0539647,20.7174741 C33.8466846,19.6367898 32.8025831,18.9287558 31.7218988,19.1360359 C31.714724,19.137412 31.714724,19.137412 31.7075489,19.138788 C30.6268567,19.3460265 29.9187826,20.3901008 30.1260211,21.470793 C30.3332597,22.5514853 31.3773339,23.2595594 32.4580262,23.0523208 C32.4652764,23.0509305 32.4652764,23.0509305 32.4725265,23.0495399 Z M39.8723866,20.8947688 C39.877909,20.8935242 39.877909,20.8935242 39.883431,20.8922795 C40.6915794,20.7101047 41.1990314,19.9072892 41.0168566,19.0991407 C40.8346818,18.2909923 40.0318663,17.7835404 39.2237179,17.9657152 C39.218279,17.9669412 39.218279,17.9669412 39.2128397,17.968167 C38.404681,18.1502959 37.8971834,18.9530826 38.0793123,19.7612414 C38.2614411,20.5694001 39.0642279,21.0768976 39.8723866,20.8947688 L39.8723866,20.8947688 Z M47.4276119,19.0082845 C47.4329844,19.0067855 47.4329844,19.0067855 47.4383562,19.0052864 C48.2362896,18.7825897 48.7026111,17.9552056 48.4799145,17.1572722 C48.2572179,16.3593388 47.4298337,15.8930173 46.6319003,16.1157139 C46.6266645,16.1171751 46.6266645,16.1171751 46.6214279,16.1186362 C45.8234736,16.3412577 45.3570742,17.168598 45.5796958,17.9665523 C45.8023173,18.7645067 46.6296576,19.230906 47.4276119,19.0082845 L47.4276119,19.0082845 Z M54.4138099,15.7087505 C54.4167849,15.7075945 54.4167849,15.7075945 54.419759,15.7064383 C54.8556933,15.5369585 55.0716973,15.0461733 54.9022174,14.610239 C54.7327376,14.1743047 54.2419524,13.9583007 53.8060181,14.1277806 C53.8032127,14.1288712 53.8032127,14.1288712 53.8004064,14.1299616 C53.3644359,14.2993484 53.148327,14.7900873 53.3177137,15.2260578 C53.4871005,15.6620283 53.9778394,15.8781372 54.4138099,15.7087505 L54.4138099,15.7087505 Z" id="Shape"></path>
</g>
<g id="middle" transform="translate(0.000000, 33.900002)">
<path d="M1.4471104,12.2885536 C1.45019313,12.2881864 1.45019313,12.2881864 1.45327704,12.2878189 C1.91768952,12.2324787 2.24930811,11.8111359 2.1939679,11.3467234 C2.13862768,10.8823109 1.71728488,10.5506923 1.2528724,10.6060325 C1.24980572,10.606398 1.24980572,10.606398 1.24674021,10.6067632 C0.782326598,10.6620939 0.450699376,11.0834299 0.506030077,11.5478435 C0.561360778,12.0122571 0.982696791,12.3438844 1.4471104,12.2885536 L1.4471104,12.2885536 Z M9.34858965,12.1304907 C9.35409106,12.129756 9.35409106,12.129756 9.35959333,12.129021 C10.1807278,12.019341 10.7574756,11.2647668 10.6477955,10.4436323 C10.5381155,9.62249789 9.78354128,9.04575011 8.96240683,9.15543014 C8.95693539,9.15616095 8.95693539,9.15616095 8.95146479,9.15689157 C8.13032806,9.26655457 7.55356464,10.0211168 7.66322765,10.8422536 C7.77289065,11.6633903 8.52745292,12.2401537 9.34858965,12.1304907 L9.34858965,12.1304907 Z M17.0066591,11.0493128 C17.0121188,11.0484984 17.0121188,11.0484984 17.0175789,11.0476838 C17.8369369,10.9254384 18.4020584,10.1621181 18.279813,9.34276003 C18.1575677,8.52340201 17.3942473,7.95828052 16.5748893,8.08052587 C16.5694641,8.08133528 16.5694641,8.08133528 16.5640392,8.08214454 C15.7446783,8.20437064 15.1795389,8.96767771 15.301765,9.78703861 C15.4239911,10.6063995 16.1872982,11.1715389 17.0066591,11.0493128 L17.0066591,11.0493128 Z M24.8225082,10.4232459 C24.8297684,10.4220275 24.8297684,10.4220275 24.8370287,10.420809 C25.922252,10.2386672 26.6543441,9.21126476 26.4722023,8.12604147 C26.2900605,7.04081818 25.2626581,6.30872601 24.1774348,6.49086783 C24.1702314,6.4920768 24.1702314,6.4920768 24.1630282,6.49328559 C23.0777996,6.67539597 22.3456777,7.70277717 22.5277881,8.78800574 C22.7098984,9.87323431 23.7372796,10.6053563 24.8225082,10.4232459 L24.8225082,10.4232459 Z M32.4725265,9.05261002 C33.5532108,8.84532993 34.2612448,7.80122849 34.0539647,6.72054419 C33.8466846,5.63985989 32.8025831,4.93182589 31.7218988,5.13910599 C31.714724,5.14048211 31.714724,5.14048211 31.7075489,5.14185807 C30.6268567,5.34909665 29.9187826,6.39317088 30.1260211,7.47386314 C30.3332597,8.5545554 31.3773339,9.26262952 32.4580262,9.05539095 C32.4652764,9.05400057 32.4652764,9.05400057 32.4725265,9.05261002 Z M39.8723866,6.89476879 C39.877909,6.8935242 39.877909,6.8935242 39.883431,6.89227947 C40.6915794,6.71010471 41.1990314,5.90728916 41.0168566,5.09914075 C40.8346818,4.29099233 40.0318663,3.78354042 39.2237179,3.96571517 C39.218279,3.96694116 39.218279,3.96694116 39.2128397,3.96816703 C38.404681,4.15029588 37.8971834,4.9530826 38.0793123,5.76124136 C38.2614411,6.56940012 39.0642279,7.07689764 39.8723866,6.89476879 L39.8723866,6.89476879 Z M47.4276119,5.00828445 C47.4329844,5.00678549 47.4329844,5.00678549 47.4383562,5.00528637 C48.2362896,4.78258973 48.7026111,3.95520561 48.4799145,3.15727221 C48.2572179,2.35933881 47.4298337,1.89301728 46.6319003,2.11571391 C46.6266645,2.1171751 46.6266645,2.1171751 46.6214279,2.11863616 C45.8234736,2.34125773 45.3570742,3.16859798 45.5796958,3.96655233 C45.8023173,4.76450667 46.6296576,5.23090603 47.4276119,5.00828445 L47.4276119,5.00828445 Z M54.419759,2.30643871 C54.8556933,2.13695884 55.0716973,1.6461737 54.9022174,1.21023941 C54.7327376,0.774305114 54.2419524,0.558301127 53.8060181,0.727780997 C53.8032127,0.728871549 53.8032127,0.728871549 53.8004064,0.729962021 C53.3644359,0.89934874 53.148327,1.39008772 53.3177137,1.82605822 C53.4871005,2.26202871 53.9778394,2.47813756 54.4138099,2.30875084 C54.4167849,2.30759485 54.4167849,2.30759485 54.419759,2.30643871 Z" id="Shape"></path>
<path d="M1.67760355,20.096503 C1.68306395,20.0958524 1.68306395,20.0958524 1.68852642,20.0952015 C2.51113381,19.9971782 3.09852524,19.2508595 3.00050189,18.4282521 C2.90247854,17.6056447 2.15615986,17.0182533 1.33355246,17.1162767 C1.3281205,17.1169239 1.3281205,17.1169239 1.3226906,17.1175709 C0.500081196,17.2155774 -0.0873255124,17.961884 0.0106809923,18.7844934 C0.108687497,19.6071028 0.854994145,20.1945095 1.67760355,20.096503 L1.67760355,20.096503 Z M9.34858965,19.1274206 C9.35409106,19.1266859 9.35409106,19.1266859 9.35959333,19.1259509 C10.1807278,19.0162709 10.7574756,18.2616967 10.6477955,17.4405622 C10.5381155,16.6194278 9.78354128,16.04268 8.96240683,16.15236 C8.95693539,16.1530908 8.95693539,16.1530908 8.95146479,16.1538215 C8.13032806,16.2634845 7.55356464,17.0180467 7.66322765,17.8391835 C7.77289065,18.6603202 8.52745292,19.2370836 9.34858965,19.1274206 L9.34858965,19.1274206 Z M17.1767435,18.6256231 C17.1839958,18.6245412 17.1839958,18.6245412 17.1912486,18.6234592 C18.27963,18.4610765 19.0303002,17.4471319 18.8679175,16.3587506 C18.7055348,15.2703693 17.6915903,14.519699 16.6032089,14.6820817 C16.5960024,14.6831569 16.5960024,14.6831569 16.5887964,14.6842319 C15.5004112,14.846589 14.7497172,15.8605159 14.9120743,16.948901 C15.0744314,18.0372862 16.0883584,18.7879802 17.1767435,18.6256231 L17.1767435,18.6256231 Z M24.8370287,17.4177379 C25.922252,17.2355961 26.6543441,16.2081937 26.4722023,15.1229704 C26.2900605,14.0377471 25.2626581,13.3056549 24.1774348,13.4877968 C24.1702314,13.4890057 24.1702314,13.4890057 24.1630282,13.4902145 C23.0777996,13.6723249 22.3456777,14.6997061 22.5277881,15.7849347 C22.7098984,16.8701632 23.7372796,17.6022852 24.8225082,17.4201748 C24.8297684,17.4189565 24.8297684,17.4189565 24.8370287,17.4177379 Z M32.4725265,16.061085 C33.5532108,15.853199 34.2612448,14.8060455 34.0539647,13.7222022 C33.8466846,12.6383589 32.8025831,11.9282552 31.7218988,12.1361412 C31.714724,12.1375214 31.714724,12.1375214 31.7075489,12.1389013 C30.6268567,12.3467457 29.9187826,13.3938719 30.1260211,14.4777232 C30.3332597,15.5615745 31.3773339,16.2717185 32.4580262,16.0638741 C32.4652764,16.0624797 32.4652764,16.0624797 32.4725265,16.061085 Z M40.0707225,14.4695476 C40.0780573,14.4678946 40.0780573,14.4678946 40.0853916,14.4662413 C41.158768,14.2242783 41.8327617,13.1579849 41.5907986,12.0846085 C41.3488355,11.011232 40.2825422,10.3372384 39.2091657,10.5792015 C39.2019419,10.5808298 39.2019419,10.5808298 39.1947175,10.582458 C38.1213273,10.8243601 37.447273,11.8906152 37.6891752,12.9640053 C37.9310773,14.0373955 38.9973324,14.7114498 40.0707225,14.4695476 L40.0707225,14.4695476 Z M47.4276119,12.0082845 C47.4329844,12.0067855 47.4329844,12.0067855 47.4383562,12.0052864 C48.2362896,11.7825897 48.7026111,10.9552056 48.4799145,10.1572722 C48.2572179,9.35933881 47.4298337,8.89301728 46.6319003,9.11571391 C46.6266645,9.1171751 46.6266645,9.1171751 46.6214279,9.11863616 C45.8234736,9.34125773 45.3570742,10.168598 45.5796958,10.9665523 C45.8023173,11.7645067 46.6296576,12.230906 47.4276119,12.0082845 L47.4276119,12.0082845 Z M54.8999721,9.57562965 C54.9052414,9.57358217 54.9052414,9.57358217 54.9105092,9.57153441 C55.6826371,9.27135123 56.0652239,8.40207131 55.7650408,7.62994336 C55.4648576,6.85781542 54.5955777,6.4752286 53.8234497,6.77541179 C53.8184808,6.77734338 53.8184808,6.77734338 53.8135101,6.77927482 C53.0413181,7.07929302 52.6585455,7.94849117 52.9585637,8.72068323 C53.2585819,9.4928753 54.12778,9.87564785 54.8999721,9.57562965 L54.8999721,9.57562965 Z" id="Shape"></path>
<path d="M1.45327704,26.6978168 C1.54647464,26.6867112 1.63432439,26.660866 1.7147722,26.6228911 C2.03520341,26.4716332 2.23820252,26.1279362 2.1939679,25.7567213 C2.13862768,25.2923089 1.71728488,24.9606903 1.2528724,25.0160305 C1.24980572,25.0163959 1.24980572,25.0163959 1.24674021,25.0167611 C0.782326598,25.0720918 0.450699376,25.4934278 0.506030077,25.9578415 C0.561360778,26.4222551 0.982696791,26.7538823 1.4471104,26.6985516 C1.45019313,26.6981843 1.45019313,26.6981843 1.45327704,26.6978168 Z M9.34858965,26.1274206 C9.35409106,26.1266859 9.35409106,26.1266859 9.35959333,26.1259509 C10.1807278,26.0162709 10.7574756,25.2616967 10.6477955,24.4405622 C10.5381155,23.6194278 9.78354128,23.04268 8.96240683,23.15236 C8.95693539,23.1530908 8.95693539,23.1530908 8.95146479,23.1538215 C8.13032806,23.2634845 7.55356464,24.0180467 7.66322765,24.8391835 C7.77289065,25.6603202 8.52745292,26.2370836 9.34858965,26.1274206 L9.34858965,26.1274206 Z M17.0066591,25.0462427 C17.0121188,25.0454283 17.0121188,25.0454283 17.0175789,25.0446136 C17.8369369,24.9223683 18.4020584,24.1590479 18.279813,23.3396899 C18.1575677,22.5203319 17.3942473,21.9552104 16.5748893,22.0774558 C16.5694641,22.0782652 16.5694641,22.0782652 16.5640392,22.0790744 C15.7446783,22.2013005 15.1795389,22.9646076 15.301765,23.7839685 C15.4239911,24.6033294 16.1872982,25.1684688 17.0066591,25.0462427 L17.0066591,25.0462427 Z M24.8225082,24.4201748 C24.8297684,24.4189565 24.8297684,24.4189565 24.8370287,24.4177379 C25.922252,24.2355961 26.6543441,23.2081937 26.4722023,22.1229704 C26.2900605,21.0377471 25.2626581,20.3056549 24.1774348,20.4877968 C24.1702314,20.4890057 24.1702314,20.4890057 24.1630282,20.4902145 C23.0777996,20.6723249 22.3456777,21.6997061 22.5277881,22.7849347 C22.7098984,23.8701632 23.7372796,24.6022852 24.8225082,24.4201748 L24.8225082,24.4201748 Z M32.4725265,23.0495399 C33.5532108,22.8422598 34.2612448,21.7981584 34.0539647,20.7174741 C33.8466846,19.6367898 32.8025831,18.9287558 31.7218988,19.1360359 C31.714724,19.137412 31.714724,19.137412 31.7075489,19.138788 C30.6268567,19.3460265 29.9187826,20.3901008 30.1260211,21.470793 C30.3332597,22.5514853 31.3773339,23.2595594 32.4580262,23.0523208 C32.4652764,23.0509305 32.4652764,23.0509305 32.4725265,23.0495399 Z M39.8723866,20.8947688 C39.877909,20.8935242 39.877909,20.8935242 39.883431,20.8922795 C40.6915794,20.7101047 41.1990314,19.9072892 41.0168566,19.0991407 C40.8346818,18.2909923 40.0318663,17.7835404 39.2237179,17.9657152 C39.218279,17.9669412 39.218279,17.9669412 39.2128397,17.968167 C38.404681,18.1502959 37.8971834,18.9530826 38.0793123,19.7612414 C38.2614411,20.5694001 39.0642279,21.0768976 39.8723866,20.8947688 L39.8723866,20.8947688 Z M47.4276119,19.0082845 C47.4329844,19.0067855 47.4329844,19.0067855 47.4383562,19.0052864 C48.2362896,18.7825897 48.7026111,17.9552056 48.4799145,17.1572722 C48.2572179,16.3593388 47.4298337,15.8930173 46.6319003,16.1157139 C46.6266645,16.1171751 46.6266645,16.1171751 46.6214279,16.1186362 C45.8234736,16.3412577 45.3570742,17.168598 45.5796958,17.9665523 C45.8023173,18.7645067 46.6296576,19.230906 47.4276119,19.0082845 L47.4276119,19.0082845 Z M54.4138099,15.7087505 C54.4167849,15.7075945 54.4167849,15.7075945 54.419759,15.7064383 C54.8556933,15.5369585 55.0716973,15.0461733 54.9022174,14.610239 C54.7327376,14.1743047 54.2419524,13.9583007 53.8060181,14.1277806 C53.8032127,14.1288712 53.8032127,14.1288712 53.8004064,14.1299616 C53.3644359,14.2993484 53.148327,14.7900873 53.3177137,15.2260578 C53.4871005,15.6620283 53.9778394,15.8781372 54.4138099,15.7087505 L54.4138099,15.7087505 Z" id="Shape"></path>
</g>
<g id="top">
<path d="M1.4471104,12.2885536 C1.45019313,12.2881864 1.45019313,12.2881864 1.45327704,12.2878189 C1.91768952,12.2324787 2.24930811,11.8111359 2.1939679,11.3467234 C2.13862768,10.8823109 1.71728488,10.5506923 1.2528724,10.6060325 C1.24980572,10.606398 1.24980572,10.606398 1.24674021,10.6067632 C0.782326598,10.6620939 0.450699376,11.0834299 0.506030077,11.5478435 C0.561360778,12.0122571 0.982696791,12.3438844 1.4471104,12.2885536 L1.4471104,12.2885536 Z M9.34858965,12.1304907 C9.35409106,12.129756 9.35409106,12.129756 9.35959333,12.129021 C10.1807278,12.019341 10.7574756,11.2647668 10.6477955,10.4436323 C10.5381155,9.62249789 9.78354128,9.04575011 8.96240683,9.15543014 C8.95693539,9.15616095 8.95693539,9.15616095 8.95146479,9.15689157 C8.13032806,9.26655457 7.55356464,10.0211168 7.66322765,10.8422536 C7.77289065,11.6633903 8.52745292,12.2401537 9.34858965,12.1304907 L9.34858965,12.1304907 Z M17.0066591,11.0493128 C17.0121188,11.0484984 17.0121188,11.0484984 17.0175789,11.0476838 C17.8369369,10.9254384 18.4020584,10.1621181 18.279813,9.34276003 C18.1575677,8.52340201 17.3942473,7.95828052 16.5748893,8.08052587 C16.5694641,8.08133528 16.5694641,8.08133528 16.5640392,8.08214454 C15.7446783,8.20437064 15.1795389,8.96767771 15.301765,9.78703861 C15.4239911,10.6063995 16.1872982,11.1715389 17.0066591,11.0493128 L17.0066591,11.0493128 Z M24.8225082,10.4232459 C24.8297684,10.4220275 24.8297684,10.4220275 24.8370287,10.420809 C25.922252,10.2386672 26.6543441,9.21126476 26.4722023,8.12604147 C26.2900605,7.04081818 25.2626581,6.30872601 24.1774348,6.49086783 C24.1702314,6.4920768 24.1702314,6.4920768 24.1630282,6.49328559 C23.0777996,6.67539597 22.3456777,7.70277717 22.5277881,8.78800574 C22.7098984,9.87323431 23.7372796,10.6053563 24.8225082,10.4232459 L24.8225082,10.4232459 Z M32.4725265,9.05261002 C33.5532108,8.84532993 34.2612448,7.80122849 34.0539647,6.72054419 C33.8466846,5.63985989 32.8025831,4.93182589 31.7218988,5.13910599 C31.714724,5.14048211 31.714724,5.14048211 31.7075489,5.14185807 C30.6268567,5.34909665 29.9187826,6.39317088 30.1260211,7.47386314 C30.3332597,8.5545554 31.3773339,9.26262952 32.4580262,9.05539095 C32.4652764,9.05400057 32.4652764,9.05400057 32.4725265,9.05261002 Z M39.8723866,6.89476879 C39.877909,6.8935242 39.877909,6.8935242 39.883431,6.89227947 C40.6915794,6.71010471 41.1990314,5.90728916 41.0168566,5.09914075 C40.8346818,4.29099233 40.0318663,3.78354042 39.2237179,3.96571517 C39.218279,3.96694116 39.218279,3.96694116 39.2128397,3.96816703 C38.404681,4.15029588 37.8971834,4.9530826 38.0793123,5.76124136 C38.2614411,6.56940012 39.0642279,7.07689764 39.8723866,6.89476879 L39.8723866,6.89476879 Z M47.4276119,5.00828445 C47.4329844,5.00678549 47.4329844,5.00678549 47.4383562,5.00528637 C48.2362896,4.78258973 48.7026111,3.95520561 48.4799145,3.15727221 C48.2572179,2.35933881 47.4298337,1.89301728 46.6319003,2.11571391 C46.6266645,2.1171751 46.6266645,2.1171751 46.6214279,2.11863616 C45.8234736,2.34125773 45.3570742,3.16859798 45.5796958,3.96655233 C45.8023173,4.76450667 46.6296576,5.23090603 47.4276119,5.00828445 L47.4276119,5.00828445 Z M54.419759,2.30643871 C54.8556933,2.13695884 55.0716973,1.6461737 54.9022174,1.21023941 C54.7327376,0.774305114 54.2419524,0.558301127 53.8060181,0.727780997 C53.8032127,0.728871549 53.8032127,0.728871549 53.8004064,0.729962021 C53.3644359,0.89934874 53.148327,1.39008772 53.3177137,1.82605822 C53.4871005,2.26202871 53.9778394,2.47813756 54.4138099,2.30875084 C54.4167849,2.30759485 54.4167849,2.30759485 54.419759,2.30643871 Z" id="Shape"></path>
<path d="M1.67760355,20.096503 C1.68306395,20.0958524 1.68306395,20.0958524 1.68852642,20.0952015 C2.51113381,19.9971782 3.09852524,19.2508595 3.00050189,18.4282521 C2.90247854,17.6056447 2.15615986,17.0182533 1.33355246,17.1162767 C1.3281205,17.1169239 1.3281205,17.1169239 1.3226906,17.1175709 C0.500081196,17.2155774 -0.0873255124,17.961884 0.0106809923,18.7844934 C0.108687497,19.6071028 0.854994145,20.1945095 1.67760355,20.096503 L1.67760355,20.096503 Z M9.34858965,19.1274206 C9.35409106,19.1266859 9.35409106,19.1266859 9.35959333,19.1259509 C10.1807278,19.0162709 10.7574756,18.2616967 10.6477955,17.4405622 C10.5381155,16.6194278 9.78354128,16.04268 8.96240683,16.15236 C8.95693539,16.1530908 8.95693539,16.1530908 8.95146479,16.1538215 C8.13032806,16.2634845 7.55356464,17.0180467 7.66322765,17.8391835 C7.77289065,18.6603202 8.52745292,19.2370836 9.34858965,19.1274206 L9.34858965,19.1274206 Z M17.1767435,18.6256231 C17.1839958,18.6245412 17.1839958,18.6245412 17.1912486,18.6234592 C18.27963,18.4610765 19.0303002,17.4471319 18.8679175,16.3587506 C18.7055348,15.2703693 17.6915903,14.519699 16.6032089,14.6820817 C16.5960024,14.6831569 16.5960024,14.6831569 16.5887964,14.6842319 C15.5004112,14.846589 14.7497172,15.8605159 14.9120743,16.948901 C15.0744314,18.0372862 16.0883584,18.7879802 17.1767435,18.6256231 L17.1767435,18.6256231 Z M24.8370287,17.4177379 C25.922252,17.2355961 26.6543441,16.2081937 26.4722023,15.1229704 C26.2900605,14.0377471 25.2626581,13.3056549 24.1774348,13.4877968 C24.1702314,13.4890057 24.1702314,13.4890057 24.1630282,13.4902145 C23.0777996,13.6723249 22.3456777,14.6997061 22.5277881,15.7849347 C22.7098984,16.8701632 23.7372796,17.6022852 24.8225082,17.4201748 C24.8297684,17.4189565 24.8297684,17.4189565 24.8370287,17.4177379 Z M32.4725265,16.061085 C33.5532108,15.853199 34.2612448,14.8060455 34.0539647,13.7222022 C33.8466846,12.6383589 32.8025831,11.9282552 31.7218988,12.1361412 C31.714724,12.1375214 31.714724,12.1375214 31.7075489,12.1389013 C30.6268567,12.3467457 29.9187826,13.3938719 30.1260211,14.4777232 C30.3332597,15.5615745 31.3773339,16.2717185 32.4580262,16.0638741 C32.4652764,16.0624797 32.4652764,16.0624797 32.4725265,16.061085 Z M40.0707225,14.4695476 C40.0780573,14.4678946 40.0780573,14.4678946 40.0853916,14.4662413 C41.158768,14.2242783 41.8327617,13.1579849 41.5907986,12.0846085 C41.3488355,11.011232 40.2825422,10.3372384 39.2091657,10.5792015 C39.2019419,10.5808298 39.2019419,10.5808298 39.1947175,10.582458 C38.1213273,10.8243601 37.447273,11.8906152 37.6891752,12.9640053 C37.9310773,14.0373955 38.9973324,14.7114498 40.0707225,14.4695476 L40.0707225,14.4695476 Z M47.4276119,12.0082845 C47.4329844,12.0067855 47.4329844,12.0067855 47.4383562,12.0052864 C48.2362896,11.7825897 48.7026111,10.9552056 48.4799145,10.1572722 C48.2572179,9.35933881 47.4298337,8.89301728 46.6319003,9.11571391 C46.6266645,9.1171751 46.6266645,9.1171751 46.6214279,9.11863616 C45.8234736,9.34125773 45.3570742,10.168598 45.5796958,10.9665523 C45.8023173,11.7645067 46.6296576,12.230906 47.4276119,12.0082845 L47.4276119,12.0082845 Z M54.8999721,9.57562965 C54.9052414,9.57358217 54.9052414,9.57358217 54.9105092,9.57153441 C55.6826371,9.27135123 56.0652239,8.40207131 55.7650408,7.62994336 C55.4648576,6.85781542 54.5955777,6.4752286 53.8234497,6.77541179 C53.8184808,6.77734338 53.8184808,6.77734338 53.8135101,6.77927482 C53.0413181,7.07929302 52.6585455,7.94849117 52.9585637,8.72068323 C53.2585819,9.4928753 54.12778,9.87564785 54.8999721,9.57562965 L54.8999721,9.57562965 Z" id="Shape"></path>
<path d="M1.45327704,26.6978168 C1.54647464,26.6867112 1.63432439,26.660866 1.7147722,26.6228911 C2.03520341,26.4716332 2.23820252,26.1279362 2.1939679,25.7567213 C2.13862768,25.2923089 1.71728488,24.9606903 1.2528724,25.0160305 C1.24980572,25.0163959 1.24980572,25.0163959 1.24674021,25.0167611 C0.782326598,25.0720918 0.450699376,25.4934278 0.506030077,25.9578415 C0.561360778,26.4222551 0.982696791,26.7538823 1.4471104,26.6985516 C1.45019313,26.6981843 1.45019313,26.6981843 1.45327704,26.6978168 Z M9.34858965,26.1274206 C9.35409106,26.1266859 9.35409106,26.1266859 9.35959333,26.1259509 C10.1807278,26.0162709 10.7574756,25.2616967 10.6477955,24.4405622 C10.5381155,23.6194278 9.78354128,23.04268 8.96240683,23.15236 C8.95693539,23.1530908 8.95693539,23.1530908 8.95146479,23.1538215 C8.13032806,23.2634845 7.55356464,24.0180467 7.66322765,24.8391835 C7.77289065,25.6603202 8.52745292,26.2370836 9.34858965,26.1274206 L9.34858965,26.1274206 Z M17.0066591,25.0462427 C17.0121188,25.0454283 17.0121188,25.0454283 17.0175789,25.0446136 C17.8369369,24.9223683 18.4020584,24.1590479 18.279813,23.3396899 C18.1575677,22.5203319 17.3942473,21.9552104 16.5748893,22.0774558 C16.5694641,22.0782652 16.5694641,22.0782652 16.5640392,22.0790744 C15.7446783,22.2013005 15.1795389,22.9646076 15.301765,23.7839685 C15.4239911,24.6033294 16.1872982,25.1684688 17.0066591,25.0462427 L17.0066591,25.0462427 Z M24.8225082,24.4201748 C24.8297684,24.4189565 24.8297684,24.4189565 24.8370287,24.4177379 C25.922252,24.2355961 26.6543441,23.2081937 26.4722023,22.1229704 C26.2900605,21.0377471 25.2626581,20.3056549 24.1774348,20.4877968 C24.1702314,20.4890057 24.1702314,20.4890057 24.1630282,20.4902145 C23.0777996,20.6723249 22.3456777,21.6997061 22.5277881,22.7849347 C22.7098984,23.8701632 23.7372796,24.6022852 24.8225082,24.4201748 L24.8225082,24.4201748 Z M32.4725265,23.0495399 C33.5532108,22.8422598 34.2612448,21.7981584 34.0539647,20.7174741 C33.8466846,19.6367898 32.8025831,18.9287558 31.7218988,19.1360359 C31.714724,19.137412 31.714724,19.137412 31.7075489,19.138788 C30.6268567,19.3460265 29.9187826,20.3901008 30.1260211,21.470793 C30.3332597,22.5514853 31.3773339,23.2595594 32.4580262,23.0523208 C32.4652764,23.0509305 32.4652764,23.0509305 32.4725265,23.0495399 Z M39.8723866,20.8947688 C39.877909,20.8935242 39.877909,20.8935242 39.883431,20.8922795 C40.6915794,20.7101047 41.1990314,19.9072892 41.0168566,19.0991407 C40.8346818,18.2909923 40.0318663,17.7835404 39.2237179,17.9657152 C39.218279,17.9669412 39.218279,17.9669412 39.2128397,17.968167 C38.404681,18.1502959 37.8971834,18.9530826 38.0793123,19.7612414 C38.2614411,20.5694001 39.0642279,21.0768976 39.8723866,20.8947688 L39.8723866,20.8947688 Z M47.4276119,19.0082845 C47.4329844,19.0067855 47.4329844,19.0067855 47.4383562,19.0052864 C48.2362896,18.7825897 48.7026111,17.9552056 48.4799145,17.1572722 C48.2572179,16.3593388 47.4298337,15.8930173 46.6319003,16.1157139 C46.6266645,16.1171751 46.6266645,16.1171751 46.6214279,16.1186362 C45.8234736,16.3412577 45.3570742,17.168598 45.5796958,17.9665523 C45.8023173,18.7645067 46.6296576,19.230906 47.4276119,19.0082845 L47.4276119,19.0082845 Z M54.4138099,15.7087505 C54.4167849,15.7075945 54.4167849,15.7075945 54.419759,15.7064383 C54.8556933,15.5369585 55.0716973,15.0461733 54.9022174,14.610239 C54.7327376,14.1743047 54.2419524,13.9583007 53.8060181,14.1277806 C53.8032127,14.1288712 53.8032127,14.1288712 53.8004064,14.1299616 C53.3644359,14.2993484 53.148327,14.7900873 53.3177137,15.2260578 C53.4871005,15.6620283 53.9778394,15.8781372 54.4138099,15.7087505 L54.4138099,15.7087505 Z" id="Shape"></path>
</g>
</g>
</g>
</svg>
</a>
</li>
<li><a href="../../../../.././blog/index.html">Blog</a></li>
<li><a href="../../../../.././docs/index.html">Docs</a></li>
<li><a class="toggle-children" onclick='(function(){var child=document.getElementById("Usage");child.classList.toggle("show");child.classList.toggle("hide");})();'>Usage</a>
<ul id="Usage" class="hide">
<li><a href="../../../../.././docs/usage/cbt-projects.html">cbt-projects</a></li><li><a href="../../../../.././docs/usage/sbt-projects.html">sbt-projects</a></li><li><a href="../../../../.././docs/usage/dottydoc.html">Dottydoc</a></li><li><a href="../../../../.././docs/usage/migrating.html">Migrating</a></li>
</ul></li>
<li><a class="toggle-children" onclick='(function(){var child=document.getElementById("Contributing");child.classList.toggle("show");child.classList.toggle("hide");})();'>Contributing</a>
<ul id="Contributing" class="hide">
<li><a href="../../../../.././docs/contributing/eclipse.html">Eclipse</a></li><li><a href="../../../../.././docs/contributing/getting-started.html">Getting Started</a></li><li><a href="../../../../.././docs/contributing/intellij-idea.html">IntelliJ IDEA</a></li><li><a href="../../../../.././docs/contributing/workflow.html">Workflow</a></li>
</ul></li>
<li><a class="toggle-children" onclick='(function(){var child=document.getElementById("Internals");child.classList.toggle("show");child.classList.toggle("hide");})();'>Internals</a>
<ul id="Internals" class="hide">
<li><a href="../../../../.././docs/internals/backend.html">Backend</a></li><li><a href="../../../../.././docs/internals/benchmarks.html">Benchmarks</a></li><li><a href="../../../../.././docs/internals/classpaths.html">Classpaths</a></li><li><a href="../../../../.././docs/internals/core-data-structures.html">Core Data Structrues</a></li><li><a href="../../../../.././docs/internals/contexts.html">Contexts</a></li><li><a href="../../../../.././docs/internals/dotc-scalac.html">Dotc vs Scalac</a></li><li><a href="../../../../.././docs/internals/higher-kinded-v2.html">Higher-Kinded Types</a></li><li><a href="../../../../.././docs/internals/overall-structure.html">Overall Structure</a></li><li><a href="../../../../.././docs/internals/periods.html">Periods</a></li><li><a href="../../../../.././docs/internals/syntax.html">Syntax</a></li><li><a href="../../../../.././docs/internals/type-system.html">Type System</a></li>
</ul></li>
</ul>
<ul class="index-entities">
<li class="index-title">
<span>API</span>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/index.html">dotty</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/index.html">dotty.tools</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/package$/sharable.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/package$/sharable.html">sharable</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/package$/unshared.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/package$/unshared.html">unshared</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/backend/index.html">dotty.tools.backend</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/backend/jvm/index.html">dotty.tools.backend.jvm</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/backend/jvm/CollectEntryPoints$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/backend/jvm/CollectEntryPoints.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/backend/jvm/CollectEntryPoints.html">CollectEntryPoints</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/backend/jvm/CollectSuperCalls.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/backend/jvm/CollectSuperCalls.html">CollectSuperCalls</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/backend/jvm/DottyBackendInterface.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/backend/jvm/DottyBackendInterface.html">DottyBackendInterface</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/backend/jvm/GenBCode.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/backend/jvm/GenBCode.html">GenBCode</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/backend/jvm/GenBCodePipeline.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/backend/jvm/GenBCodePipeline.html">GenBCodePipeline</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/backend/jvm/LabelDefs.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/backend/jvm/LabelDefs.html">LabelDefs</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/index.html">dotty.tools.dotc</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/Bench$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/Bench$.html">Bench</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/CompilationUnit.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/CompilationUnit.html">CompilationUnit</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/Compiler.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/Compiler.html">Compiler</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/Driver.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/Driver.html">Driver</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/FromTasty$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/FromTasty$.html">FromTasty</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/Main$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/Main$.html">Main</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/Resident.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/Resident.html">Resident</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/Run.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/Run.html">Run</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/ast/index.html">dotty.tools.dotc.ast</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/ast/NavigateAST$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/ast/NavigateAST$.html">NavigateAST</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/ast/PluggableTransformers$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/ast/PluggableTransformers$.html">PluggableTransformers</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/ast/Positioned.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/ast/Positioned.html">Positioned</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/ast/TreeInfo$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/ast/TreeInfo.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/ast/TreeInfo.html">TreeInfo</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/ast/TreeTypeMap$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/ast/TreeTypeMap.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/ast/TreeTypeMap.html">TreeTypeMap</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/ast/Trees$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/ast/Trees$.html">Trees</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/ast/TypedTreeInfo.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/ast/TypedTreeInfo.html">TypedTreeInfo</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/ast/UntypedTreeInfo.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/ast/UntypedTreeInfo.html">UntypedTreeInfo</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/ast/desugar$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/ast/desugar$.html">desugar</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/ast/tpd$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/ast/tpd$.html">tpd</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/ast/untpd$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/ast/untpd$.html">untpd</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/backend/index.html">dotty.tools.dotc.backend</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/backend/jvm/index.html">dotty.tools.dotc.backend.jvm</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/backend/jvm/DottyPrimitives.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/backend/jvm/DottyPrimitives.html">DottyPrimitives</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/index.html">dotty.tools.dotc.config</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/config/AnyScalaVersion$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/AnyScalaVersion$.html">AnyScalaVersion</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/config/CompilerCommand$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/CompilerCommand$.html">CompilerCommand</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/config/Config$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/Config$.html">Config</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/config/JavaPlatform.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/JavaPlatform.html">JavaPlatform</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/config/NoScalaVersion$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/NoScalaVersion$.html">NoScalaVersion</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/config/OutputDirs.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/OutputDirs.html">OutputDirs</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/config/PathResolver$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/config/PathResolver.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/PathResolver.html">PathResolver</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/config/Platform.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/Platform.html">Platform</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/config/Printers$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/Printers$.html">Printers</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/config/Properties$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/Properties$.html">Properties</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/config/PropertiesTrait.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/PropertiesTrait.html">PropertiesTrait</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/config/ScalaBuild$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/config/ScalaBuild.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/ScalaBuild.html">ScalaBuild</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/config/ScalaSettings.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/ScalaSettings.html">ScalaSettings</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/config/ScalaVersion$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/config/ScalaVersion.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/ScalaVersion.html">ScalaVersion</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/config/Settings$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/Settings$.html">Settings</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/config/SpecificScalaVersion$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/config/SpecificScalaVersion.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/SpecificScalaVersion.html">SpecificScalaVersion</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/config/WrappedProperties$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/config/WrappedProperties.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/config/WrappedProperties.html">WrappedProperties</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/index.html">dotty.tools.dotc.core</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Annotations$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Annotations$.html">Annotations</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/CheckRealizable$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/CheckRealizable.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/CheckRealizable.html">CheckRealizable</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/ClassfileLoader.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/ClassfileLoader.html">ClassfileLoader</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Comments$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Comments$.html">Comments</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Constants$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Constants$.html">Constants</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/Constraint.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Constraint.html">Constraint</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/core/ConstraintHandling.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/ConstraintHandling.html">ConstraintHandling</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/core/ConstraintRunInfo.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/ConstraintRunInfo.html">ConstraintRunInfo</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Contexts$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Contexts$.html">Contexts</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Decorators$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Decorators$.html">Decorators</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Definitions$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/Definitions.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Definitions.html">Definitions</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/DenotTransformers$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/DenotTransformers$.html">DenotTransformers</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Denotations$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Denotations$.html">Denotations</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/ExplainingTypeComparer.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/ExplainingTypeComparer.html">ExplainingTypeComparer</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Flags$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Flags$.html">Flags</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Hashable$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/core/Hashable.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Hashable.html">Hashable</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Mode$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/core/Mode.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Mode.html">Mode</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/MutableTyperState.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/MutableTyperState.html">MutableTyperState</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/NameOps$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/NameOps$.html">NameOps</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Names$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Names$.html">Names</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/OrderingConstraint$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/OrderingConstraint.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/OrderingConstraint.html">OrderingConstraint</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Periods$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/Periods.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Periods.html">Periods</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Phases$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/core/Phases.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Phases.html">Phases</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Scopes$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Scopes$.html">Scopes</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Signature$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/core/Signature.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Signature.html">Signature</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/SourcefileLoader.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/SourcefileLoader.html">SourcefileLoader</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/StdNames$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/StdNames$.html">StdNames</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/core/Substituters.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Substituters.html">Substituters</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/SymDenotations$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/core/SymDenotations.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/SymDenotations.html">SymDenotations</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/SymbolLoader.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/SymbolLoader.html">SymbolLoader</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/SymbolLoaders$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/SymbolLoaders.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/SymbolLoaders.html">SymbolLoaders</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Symbols$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/core/Symbols.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Symbols.html">Symbols</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/TypeApplications$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/TypeApplications.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/TypeApplications.html">TypeApplications</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/TypeComparer$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/TypeComparer.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/TypeComparer.html">TypeComparer</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/TypeErasure$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/TypeErasure.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/TypeErasure.html">TypeErasure</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/TypeOps$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/core/TypeOps.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/TypeOps.html">TypeOps</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/core/TypeParamInfo.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/TypeParamInfo.html">TypeParamInfo</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/TyperState.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/TyperState.html">TyperState</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Types$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Types$.html">Types</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/Uniques$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/Uniques$.html">Uniques</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/classfile/index.html">dotty.tools.dotc.core.classfile</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/classfile/AbstractFileReader.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/classfile/AbstractFileReader.html">AbstractFileReader</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/classfile/ByteCodecs$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/classfile/ByteCodecs$.html">ByteCodecs</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/classfile/ClassfileConstants$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/classfile/ClassfileConstants$.html">ClassfileConstants</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/classfile/ClassfileParser$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/classfile/ClassfileParser.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/classfile/ClassfileParser.html">ClassfileParser</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/tasty/index.html">dotty.tools.dotc.core.tasty</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/tasty/DottyUnpickler$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/tasty/DottyUnpickler.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/tasty/DottyUnpickler.html">DottyUnpickler</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/tasty/NameBuffer$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/tasty/NameBuffer.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/tasty/NameBuffer.html">NameBuffer</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/tasty/PositionPickler.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/tasty/PositionPickler.html">PositionPickler</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/tasty/PositionUnpickler.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/tasty/PositionUnpickler.html">PositionUnpickler</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyBuffer$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyBuffer.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyBuffer.html">TastyBuffer</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyFormat$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyFormat$.html">TastyFormat</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyName$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyName.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyName.html">TastyName</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyPickler.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyPickler.html">TastyPickler</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyPrinter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyPrinter.html">TastyPrinter</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyReader$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyReader.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyReader.html">TastyReader</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyUnpickler$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyUnpickler.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/tasty/TastyUnpickler.html">TastyUnpickler</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/tasty/TreeBuffer.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/tasty/TreeBuffer.html">TreeBuffer</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/tasty/TreePickler.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/tasty/TreePickler.html">TreePickler</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/tasty/TreeUnpickler$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/tasty/TreeUnpickler.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/tasty/TreeUnpickler.html">TreeUnpickler</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/unpickleScala2/index.html">dotty.tools.dotc.core.unpickleScala2</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/unpickleScala2/PickleBuffer$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/unpickleScala2/PickleBuffer.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/unpickleScala2/PickleBuffer.html">PickleBuffer</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/core/unpickleScala2/Scala2Unpickler.html">Scala2Unpickler</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/parsing/index.html">dotty.tools.dotc.parsing</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/parsing/CharArrayReader.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/parsing/CharArrayReader.html">CharArrayReader</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/parsing/JavaParsers$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/parsing/JavaParsers$.html">JavaParsers</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/parsing/JavaScanners$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/parsing/JavaScanners$.html">JavaScanners</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/parsing/JavaTokens$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/parsing/JavaTokens$.html">JavaTokens</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/parsing/MarkupParserCommon.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/parsing/MarkupParserCommon.html">MarkupParserCommon</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/parsing/MarkupParsers$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/parsing/MarkupParsers$.html">MarkupParsers</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/parsing/Parsers$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/parsing/Parsers$.html">Parsers</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/parsing/Scanners$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/parsing/Scanners$.html">Scanners</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/parsing/ScriptParsers$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/parsing/ScriptParsers$.html">ScriptParsers</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/parsing/SymbolicXMLBuilder.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/parsing/SymbolicXMLBuilder.html">SymbolicXMLBuilder</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/parsing/Tokens$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/parsing/Tokens$.html">Tokens</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/parsing/TokensCommon.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/parsing/TokensCommon.html">TokensCommon</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/parsing/Utility$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/parsing/Utility$.html">Utility</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/printing/index.html">dotty.tools.dotc.printing</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/printing/Formatting$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/printing/Formatting$.html">Formatting</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/printing/Highlighting$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/printing/Highlighting$.html">Highlighting</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/printing/PlainPrinter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/printing/PlainPrinter.html">PlainPrinter</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/printing/Printer.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/printing/Printer.html">Printer</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/printing/Printers.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/printing/Printers.html">Printers</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/printing/RefinedPrinter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/printing/RefinedPrinter.html">RefinedPrinter</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/printing/Showable.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/printing/Showable.html">Showable</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/printing/SyntaxHighlighting$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/printing/SyntaxHighlighting$.html">SyntaxHighlighting</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/printing/Texts$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/printing/Texts$.html">Texts</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/index.html">dotty.tools.dotc.repl</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/repl/AbstractFileClassLoader.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/AbstractFileClassLoader.html">AbstractFileClassLoader</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/repl/AmmoniteReader.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/AmmoniteReader.html">AmmoniteReader</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/CompilingInterpreter$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/repl/CompilingInterpreter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/CompilingInterpreter.html">CompilingInterpreter</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/repl/ConsoleWriter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ConsoleWriter.html">ConsoleWriter</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/InteractiveReader$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/repl/InteractiveReader.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/InteractiveReader.html">InteractiveReader</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/Interpreter$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/repl/Interpreter.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/Interpreter.html">Interpreter</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/repl/InterpreterLoop.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/InterpreterLoop.html">InterpreterLoop</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/Main$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/Main$.html">Main</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ManifestInfo$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ManifestInfo$.html">ManifestInfo</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/repl/NewLinePrintWriter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/NewLinePrintWriter.html">NewLinePrintWriter</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/REPL$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/repl/REPL.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/REPL.html">REPL</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/repl/SimpleReader.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/SimpleReader.html">SimpleReader</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/index.html">dotty.tools.dotc.repl.ammonite</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/index.html">dotty.tools.dotc.repl.ammonite.terminal</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Ansi$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Ansi$.html">Ansi</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/AnsiNav$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/AnsiNav.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/AnsiNav.html">AnsiNav</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/ClearScreen$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/ClearScreen.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/ClearScreen.html">ClearScreen</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Debug$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Debug$.html">Debug</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/DelegateFilter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/DelegateFilter.html">DelegateFilter</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Exit$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Exit$.html">Exit</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Filter$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Filter.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Filter.html">Filter</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/FilterTools$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/FilterTools$.html">FilterTools</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/LazyList$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/LazyList.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/LazyList.html">LazyList</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Printing$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Printing.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Printing.html">Printing</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Prompt$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Prompt.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Prompt.html">Prompt</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Result$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Result.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Result.html">Result</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/SpecialKeys$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/SpecialKeys$.html">SpecialKeys</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/TTY$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/TTY$.html">TTY</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/TermAction.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/TermAction.html">TermAction</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/TermInfo$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/TermInfo.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/TermInfo.html">TermInfo</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/TermState$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/TermState.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/TermState.html">TermState</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Terminal$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/Terminal$.html">Terminal</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/filters/index.html">dotty.tools.dotc.repl.ammonite.terminal.filters</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/filters/BasicFilters$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/filters/BasicFilters$.html">BasicFilters</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/filters/GUILikeFilters$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/filters/GUILikeFilters$.html">GUILikeFilters</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/filters/HistoryFilter$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/filters/HistoryFilter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/filters/HistoryFilter.html">HistoryFilter</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/filters/ReadlineFilters$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/filters/ReadlineFilters$.html">ReadlineFilters</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/filters/UndoFilter$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/filters/UndoFilter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/filters/UndoFilter.html">UndoFilter</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/filters/UndoState$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/filters/UndoState.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/repl/ammonite/terminal/filters/UndoState.html">UndoState</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/reporting/index.html">dotty.tools.dotc.reporting</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/reporting/ConsoleReporter$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/reporting/ConsoleReporter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/reporting/ConsoleReporter.html">ConsoleReporter</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/reporting/HideNonSensicalMessages.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/reporting/HideNonSensicalMessages.html">HideNonSensicalMessages</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/reporting/MessageRendering.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/reporting/MessageRendering.html">MessageRendering</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/reporting/Reporter$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/reporting/Reporter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/reporting/Reporter.html">Reporter</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/reporting/Reporting.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/reporting/Reporting.html">Reporting</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/reporting/StoreReporter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/reporting/StoreReporter.html">StoreReporter</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/reporting/ThrowingReporter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/reporting/ThrowingReporter.html">ThrowingReporter</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/reporting/UniqueMessagePositions.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/reporting/UniqueMessagePositions.html">UniqueMessagePositions</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/reporting/diagnostic/index.html">dotty.tools.dotc.reporting.diagnostic</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/reporting/diagnostic/ExtendMessage.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/reporting/diagnostic/ExtendMessage.html">ExtendMessage</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/reporting/diagnostic/Message$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/reporting/diagnostic/Message.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/reporting/diagnostic/Message.html">Message</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/reporting/diagnostic/MessageContainer$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/reporting/diagnostic/MessageContainer.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/reporting/diagnostic/MessageContainer.html">MessageContainer</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/reporting/diagnostic/NoExplanation$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/reporting/diagnostic/NoExplanation.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/reporting/diagnostic/NoExplanation.html">NoExplanation</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/reporting/diagnostic/messages$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/reporting/diagnostic/messages$.html">messages</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/rewrite/index.html">dotty.tools.dotc.rewrite</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/rewrite/Rewrites$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/rewrite/Rewrites.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/rewrite/Rewrites.html">Rewrites</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/sbt/index.html">dotty.tools.dotc.sbt</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/sbt/DefaultShowAPI$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/sbt/DefaultShowAPI$.html">DefaultShowAPI</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/sbt/ExtractAPI.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/sbt/ExtractAPI.html">ExtractAPI</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/sbt/ExtractAPICollector.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/sbt/ExtractAPICollector.html">ExtractAPICollector</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/sbt/ExtractDependencies.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/sbt/ExtractDependencies.html">ExtractDependencies</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/sbt/ExtractDependenciesCollector.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/sbt/ExtractDependenciesCollector.html">ExtractDependenciesCollector</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/sbt/SafeLazy$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/sbt/SafeLazy$.html">SafeLazy</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/sbt/ShowAPI$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/sbt/ShowAPI$.html">ShowAPI</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/sbt/ThunkHolder.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/sbt/ThunkHolder.html">ThunkHolder</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/index.html">dotty.tools.dotc.transform</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/ArrayConstructors.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/ArrayConstructors.html">ArrayConstructors</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/AugmentScala2Traits.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/AugmentScala2Traits.html">AugmentScala2Traits</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/CapturedVars.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/CapturedVars.html">CapturedVars</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/CheckReentrant.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/CheckReentrant.html">CheckReentrant</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/CheckStatic.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/CheckStatic.html">CheckStatic</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/ClassOf.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/ClassOf.html">ClassOf</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/CollectEntryPoints.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/CollectEntryPoints.html">CollectEntryPoints</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/Constructors.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/Constructors.html">Constructors</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/CrossCastAnd.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/CrossCastAnd.html">CrossCastAnd</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/CtxLazy.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/CtxLazy.html">CtxLazy</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/DropInlined.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/DropInlined.html">DropInlined</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/ElimByName.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/ElimByName.html">ElimByName</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/ElimErasedValueType.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/ElimErasedValueType.html">ElimErasedValueType</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/ElimRepeated.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/ElimRepeated.html">ElimRepeated</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/ElimStaticThis.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/ElimStaticThis.html">ElimStaticThis</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/Erasure$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/Erasure.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/Erasure.html">Erasure</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/ExpandPrivate.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/ExpandPrivate.html">ExpandPrivate</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/ExpandSAMs.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/ExpandSAMs.html">ExpandSAMs</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/ExplicitOuter$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/ExplicitOuter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/ExplicitOuter.html">ExplicitOuter</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/ExplicitSelf.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/ExplicitSelf.html">ExplicitSelf</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/ExtensionMethods$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/ExtensionMethods.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/ExtensionMethods.html">ExtensionMethods</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/FirstTransform.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/FirstTransform.html">FirstTransform</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/Flatten.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/Flatten.html">Flatten</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/FullParameterization$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/transform/FullParameterization.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/FullParameterization.html">FullParameterization</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/FunctionalInterfaces.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/FunctionalInterfaces.html">FunctionalInterfaces</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/GetClass.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/GetClass.html">GetClass</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/Getters.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/Getters.html">Getters</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/InterceptedMethods.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/InterceptedMethods.html">InterceptedMethods</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/IsInstanceOfEvaluator.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/IsInstanceOfEvaluator.html">IsInstanceOfEvaluator</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/LambdaLift$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/LambdaLift.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/LambdaLift.html">LambdaLift</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/LazyVals$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/LazyVals.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/LazyVals.html">LazyVals</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/LiftTry.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/LiftTry.html">LiftTry</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/LinkScala2ImplClasses.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/LinkScala2ImplClasses.html">LinkScala2ImplClasses</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/MacroTransform.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/MacroTransform.html">MacroTransform</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/Memoize.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/Memoize.html">Memoize</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/Mixin.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/Mixin.html">Mixin</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/MixinOps.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/MixinOps.html">MixinOps</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/MoveStatics.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/MoveStatics.html">MoveStatics</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/NonLocalReturns$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/NonLocalReturns.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/NonLocalReturns.html">NonLocalReturns</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/NormalizeFlags.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/NormalizeFlags.html">NormalizeFlags</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/OverridingPairs$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/OverridingPairs$.html">OverridingPairs</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/ParamForwarding.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/ParamForwarding.html">ParamForwarding</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/PatternMatcher.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/PatternMatcher.html">PatternMatcher</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/Pickler.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/Pickler.html">Pickler</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/PostTyper.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/PostTyper.html">PostTyper</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/PrimitiveForwarders.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/PrimitiveForwarders.html">PrimitiveForwarders</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/ResolveSuper$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/ResolveSuper.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/ResolveSuper.html">ResolveSuper</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/RestoreScopes.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/RestoreScopes.html">RestoreScopes</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/SelectStatic.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/SelectStatic.html">SelectStatic</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/SeqLiterals.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/SeqLiterals.html">SeqLiterals</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/ShortcutImplicits.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/ShortcutImplicits.html">ShortcutImplicits</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/Splitter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/Splitter.html">Splitter</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/SuperAccessors.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/SuperAccessors.html">SuperAccessors</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/SymUtils$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/SymUtils.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/SymUtils.html">SymUtils</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/SymbolOrdering.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/SymbolOrdering.html">SymbolOrdering</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/SyntheticMethods.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/SyntheticMethods.html">SyntheticMethods</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/TailRec$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/TailRec.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/TailRec.html">TailRec</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/TreeChecker.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/TreeChecker.html">TreeChecker</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/TreeExtractors$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/TreeExtractors$.html">TreeExtractors</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/TreeGen$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/TreeGen$.html">TreeGen</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/TreeTransforms$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/TreeTransforms$.html">TreeTransforms</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/TryCatchPatterns.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/TryCatchPatterns.html">TryCatchPatterns</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/transform/TypeTestsCasts.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/TypeTestsCasts.html">TypeTestsCasts</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/TypeUtils$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/TypeUtils.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/TypeUtils.html">TypeUtils</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/VCElideAllocations.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/VCElideAllocations.html">VCElideAllocations</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/VCInlineMethods.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/VCInlineMethods.html">VCInlineMethods</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/ValueClasses$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/ValueClasses$.html">ValueClasses</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/patmat/index.html">dotty.tools.dotc.transform.patmat</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Const$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Const.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Const.html">Const</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Empty$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Empty$.html">Empty</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Kon$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Kon.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Kon.html">Kon</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Or$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Or.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Or.html">Or</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Point.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Point.html">Point</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Space.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Space.html">Space</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/transform/patmat/SpaceEngine.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/patmat/SpaceEngine.html">SpaceEngine</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/transform/patmat/SpaceLogic.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/patmat/SpaceLogic.html">SpaceLogic</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Typ$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Typ.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Typ.html">Typ</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Var$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Var.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/transform/patmat/Var.html">Var</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/index.html">dotty.tools.dotc.typer</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/Applications$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/typer/Applications.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/Applications.html">Applications</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/Checking$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/typer/Checking.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/Checking.html">Checking</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/ConstFold$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/ConstFold$.html">ConstFold</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/typer/Docstrings.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/Docstrings.html">Docstrings</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/Dynamic$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/typer/Dynamic.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/Dynamic.html">Dynamic</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/EmptyTermRefSet$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/EmptyTermRefSet$.html">EmptyTermRefSet</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/ErrorReporting$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/ErrorReporting$.html">ErrorReporting</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/EtaExpansion$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/EtaExpansion$.html">EtaExpansion</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/ForceDegree$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/ForceDegree$.html">ForceDegree</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/typer/FrontEnd.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/FrontEnd.html">FrontEnd</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/typer/ImplicitRunInfo.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/ImplicitRunInfo.html">ImplicitRunInfo</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/Implicits$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/typer/Implicits.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/Implicits.html">Implicits</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/ImportInfo$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/typer/ImportInfo.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/ImportInfo.html">ImportInfo</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/Inferencing$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/Inferencing$.html">Inferencing</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/Inliner$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/typer/Inliner.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/Inliner.html">Inliner</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/typer/Namer.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/Namer.html">Namer</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/typer/NamerContextOps.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/NamerContextOps.html">NamerContextOps</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/typer/NoChecking.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/NoChecking.html">NoChecking</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/ProtoTypes$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/ProtoTypes$.html">ProtoTypes</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/typer/ReTyper.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/ReTyper.html">ReTyper</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/RefChecks$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/typer/RefChecks.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/RefChecks.html">RefChecks</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/typer/SearchHistory.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/SearchHistory.html">SearchHistory</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/typer/TermRefSet.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/TermRefSet.html">TermRefSet</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/TypeAssigner$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/typer/TypeAssigner.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/TypeAssigner.html">TypeAssigner</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/Typer$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/typer/Typer.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/Typer.html">Typer</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/VarianceChecker$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/typer/VarianceChecker.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/VarianceChecker.html">VarianceChecker</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/typer/Variances$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/typer/Variances$.html">Variances</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/index.html">dotty.tools.dotc.util</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/Attachment$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/Attachment$.html">Attachment</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/Chars$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/Chars$.html">Chars</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/CommentParsing$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/CommentParsing$.html">CommentParsing</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/DiffUtil$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/DiffUtil$.html">DiffUtil</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/util/DotClass.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/DotClass.html">DotClass</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/FreshNameCreator$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dotc/util/FreshNameCreator.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/FreshNameCreator.html">FreshNameCreator</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/HashSet$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/util/HashSet.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/HashSet.html">HashSet</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/LRUCache$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/util/LRUCache.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/LRUCache.html">LRUCache</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/NameTransformer$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/NameTransformer$.html">NameTransformer</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/NoSource$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/NoSource$.html">NoSource</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/NoSourcePosition$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/NoSourcePosition$.html">NoSourcePosition</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/Positions$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/Positions$.html">Positions</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/Property$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/Property$.html">Property</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/ScriptSourceFile$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/ScriptSourceFile$.html">ScriptSourceFile</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/util/Set.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/Set.html">Set</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/ShowPickled$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/ShowPickled$.html">ShowPickled</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/SimpleMap$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/util/SimpleMap.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/SimpleMap.html">SimpleMap</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/SixteenNibbles$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dotc/util/SixteenNibbles.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/SixteenNibbles.html">SixteenNibbles</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/SourceFile$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/util/SourceFile.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/SourceFile.html">SourceFile</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/SourcePosition$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dotc/util/SourcePosition.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/SourcePosition.html">SourcePosition</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/Stats$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/Stats$.html">Stats</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/Util$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/Util$.html">Util</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dotc/util/common$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dotc/util/common$.html">common</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/index.html">dotty.tools.dottydoc</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/DocCompiler.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/DocCompiler.html">DocCompiler</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/DocDriver.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/DocDriver.html">DocDriver</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/DocFrontEnd.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/DocFrontEnd.html">DocFrontEnd</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/Main$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/Main$.html">Main</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/core/index.html">dotty.tools.dottydoc.core</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/core/AlternateConstructors.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/core/AlternateConstructors.html">AlternateConstructors</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/core/ContextDottydoc.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/core/ContextDottydoc.html">ContextDottydoc</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/core/DocASTPhase.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/core/DocASTPhase.html">DocASTPhase</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/core/DocImplicitsPhase.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/core/DocImplicitsPhase.html">DocImplicitsPhase</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/core/DocstringPhase.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/core/DocstringPhase.html">DocstringPhase</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/core/LinkCompanions.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/core/LinkCompanions.html">LinkCompanions</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/core/LinkImplicitlyAddedTypes.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/core/LinkImplicitlyAddedTypes.html">LinkImplicitlyAddedTypes</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/core/LinkParamListTypes.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/core/LinkParamListTypes.html">LinkParamListTypes</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/core/LinkReturnTypes.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/core/LinkReturnTypes.html">LinkReturnTypes</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/core/LinkSuperTypes.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/core/LinkSuperTypes.html">LinkSuperTypes</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/core/PackageObjectsPhase.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/core/PackageObjectsPhase.html">PackageObjectsPhase</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/core/SortMembers.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/core/SortMembers.html">SortMembers</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/core/TypeLinker.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/core/TypeLinker.html">TypeLinker</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/core/UsecasePhase.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/core/UsecasePhase.html">UsecasePhase</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/core/transform$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/core/transform$.html">transform</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/index.html">dotty.tools.dottydoc.model</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/CaseClass.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/CaseClass.html">CaseClass</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/Class.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/Class.html">Class</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/Companion.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/Companion.html">Companion</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/Constructors.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/Constructors.html">Constructors</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/Def.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/Def.html">Def</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/Entity.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/Entity.html">Entity</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/ImplicitlyAddedEntity.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/ImplicitlyAddedEntity.html">ImplicitlyAddedEntity</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/JavaConverters$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/JavaConverters$.html">JavaConverters</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/Members.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/Members.html">Members</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/Modifiers.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/Modifiers.html">Modifiers</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/NonEntity$.html">O</a>
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/NonEntity.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/NonEntity.html">NonEntity</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/Object.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/Object.html">Object</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/Package.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/Package.html">Package</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/ParamList.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/ParamList.html">ParamList</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/ReturnValue.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/ReturnValue.html">ReturnValue</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/RootEntity$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/RootEntity$.html">RootEntity</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/SuperTypes.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/SuperTypes.html">SuperTypes</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/Trait.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/Trait.html">Trait</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/TypeAlias.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/TypeAlias.html">TypeAlias</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/TypeParams.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/TypeParams.html">TypeParams</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/Val.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/Val.html">Val</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/factories$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/factories$.html">factories</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/internal$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/internal$.html">internal</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/references$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/references$.html">references</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/index.html">dotty.tools.dottydoc.model.comment</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Block.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Block.html">Block</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Body$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Body.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Body.html">Body</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Bold$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Bold.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Bold.html">Bold</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Chain$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Chain.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Chain.html">Chain</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/CharReader.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/CharReader.html">CharReader</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Code$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Code.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Code.html">Code</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Comment$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Comment.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Comment.html">Comment</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/comment/CommentCleaner.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/CommentCleaner.html">CommentCleaner</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/comment/CommentParser.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/CommentParser.html">CommentParser</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/DefinitionList$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/DefinitionList.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/DefinitionList.html">DefinitionList</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/EntityLink$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/EntityLink.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/EntityLink.html">EntityLink</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/HorizontalRule$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/HorizontalRule.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/HorizontalRule.html">HorizontalRule</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/HtmlParsers$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/HtmlParsers$.html">HtmlParsers</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/HtmlTag$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/HtmlTag.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/HtmlTag.html">HtmlTag</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Inline.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Inline.html">Inline</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Italic$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Italic.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Italic.html">Italic</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Link$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Link.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Link.html">Link</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/comment/LinkTo.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/LinkTo.html">LinkTo</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/LinkToEntity$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/LinkToEntity.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/LinkToEntity.html">LinkToEntity</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/LinkToExternal$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/LinkToExternal.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/LinkToExternal.html">LinkToExternal</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/MarkdownComment$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/MarkdownComment.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/MarkdownComment.html">MarkdownComment</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/MarkdownShortener.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/MarkdownShortener.html">MarkdownShortener</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/model/comment/MarkupConversion.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/MarkupConversion.html">MarkupConversion</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Monospace$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Monospace.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Monospace.html">Monospace</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/OrderedList$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/OrderedList.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/OrderedList.html">OrderedList</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Paragraph$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Paragraph.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Paragraph.html">Paragraph</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/ParsedComment$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/ParsedComment.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/ParsedComment.html">ParsedComment</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Regexes$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Regexes$.html">Regexes</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Subscript$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Subscript.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Subscript.html">Subscript</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Summary$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Summary.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Summary.html">Summary</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Superscript$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Superscript.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Superscript.html">Superscript</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Text$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Text.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Text.html">Text</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Title$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Title.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Title.html">Title</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Tooltip$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Tooltip.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Tooltip.html">Tooltip</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Underline$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Underline.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/Underline.html">Underline</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/UnorderedList$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/UnorderedList.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/UnorderedList.html">UnorderedList</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/model/comment/WikiComment$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/WikiComment.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/WikiComment.html">WikiComment</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/model/comment/WikiParser.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/model/comment/WikiParser.html">WikiParser</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/index.html">dotty.tools.dottydoc.staticsite</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/BlogPost$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/staticsite/BlogPost.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/BlogPost.html">BlogPost</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/DefaultParams$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/staticsite/DefaultParams.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/DefaultParams.html">DefaultParams</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/staticsite/HtmlPage.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/HtmlPage.html">HtmlPage</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/IllegalFrontMatter$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/staticsite/IllegalFrontMatter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/IllegalFrontMatter.html">IllegalFrontMatter</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Include$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Include.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Include.html">Include</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Layout$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Layout.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Layout.html">Layout</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/LiquidTemplate$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/staticsite/LiquidTemplate.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/LiquidTemplate.html">LiquidTemplate</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/MapOperations$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/MapOperations$.html">MapOperations</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/MarkdownCodeBlockVisitor$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/MarkdownCodeBlockVisitor$.html">MarkdownCodeBlockVisitor</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/MarkdownLinkVisitor$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/MarkdownLinkVisitor$.html">MarkdownLinkVisitor</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/dottydoc/staticsite/MarkdownPage.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/MarkdownPage.html">MarkdownPage</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Page.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Page.html">Page</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/PageInfo$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/staticsite/PageInfo.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/PageInfo.html">PageInfo</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/staticsite/ResourceFinder.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/ResourceFinder.html">ResourceFinder</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Sidebar$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Sidebar.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Sidebar.html">Sidebar</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Site$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Site.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Site.html">Site</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/SiteInfo$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/staticsite/SiteInfo.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/SiteInfo.html">SiteInfo</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Template.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Template.html">Template</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/TemplateRenderingError$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/staticsite/TemplateRenderingError.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/TemplateRenderingError.html">TemplateRenderingError</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Title$.html">O</a>
<a class="letter-anchor case class" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Title.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Title.html">Title</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Yaml$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/Yaml$.html">Yaml</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/filters$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/filters$.html">filters</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/staticsite/tags$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/staticsite/tags$.html">tags</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/util/index.html">dotty.tools.dottydoc.util</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor trait" href="../../../../.././api/dotty/tools/dottydoc/util/MemberLookup.html">T</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/util/MemberLookup.html">MemberLookup</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/util/syntax$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/util/syntax$.html">syntax</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/util/traversing$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/util/traversing$.html">traversing</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/util/internal/index.html">dotty.tools.dottydoc.util.internal</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/dottydoc/util/internal/setters$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/dottydoc/util/internal/setters$.html">setters</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/dotty/tools/io/index.html">dotty.tools.io</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/io/ClassPath$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/io/ClassPath.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/io/ClassPath.html">ClassPath</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/io/DaemonThreadFactory$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/io/DaemonThreadFactory.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/io/DaemonThreadFactory.html">DaemonThreadFactory</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/io/DeltaClassPath.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/io/DeltaClassPath.html">DeltaClassPath</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/io/DirectoryClassPath.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/io/DirectoryClassPath.html">DirectoryClassPath</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/io/Fileish$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/io/Fileish.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/io/Fileish.html">Fileish</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/io/Jar$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/io/Jar.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/io/Jar.html">Jar</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/io/JarWriter.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/io/JarWriter.html">JarWriter</a>
</li>
<li class="index-entity with-companion ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/dotty/tools/io/JavaClassPath$.html">O</a>
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/io/JavaClassPath.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/io/JavaClassPath.html">JavaClassPath</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/io/MergedClassPath.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/io/MergedClassPath.html">MergedClassPath</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/dotty/tools/io/SourcePath.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/dotty/tools/io/SourcePath.html">SourcePath</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/strawman/index.html">strawman</a>
</li>
<li class="index-entity entity-package">
<a class="entity-name" href="../../../../.././api/strawman/collections/index.html">strawman.collections</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/strawman/collections/CollectionStrawMan1$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/strawman/collections/CollectionStrawMan1$.html">CollectionStrawMan1</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/strawman/collections/CollectionStrawMan4$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/strawman/collections/CollectionStrawMan4$.html">CollectionStrawMan4</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/strawman/collections/CollectionStrawMan5$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/strawman/collections/CollectionStrawMan5$.html">CollectionStrawMan5</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor object" href="../../../../.././api/strawman/collections/CollectionStrawMan6$.html">O</a>
</div>
<a class="entity-name" href="../../../../.././api/strawman/collections/CollectionStrawMan6$.html">CollectionStrawMan6</a>
</li>
<li class="index-entity ">
<div class="entity-kinds">
<a class="letter-anchor class" href="../../../../.././api/strawman/collections/LowPriority.html">C</a>
</div>
<a class="entity-name" href="../../../../.././api/strawman/collections/LowPriority.html">LowPriority</a>
</li>
</ul>
</div>
<div id="content-body">
<div id="menu-toggle" onclick="toggleMenu()">
<i class="fa fa-bars" aria-hidden="true"></i>
</div>
<script>
document.title = "Dotty API - dotty.tools.dotc.transform"
</script>
<div id="entity-container">
<div id="entity-title">
<span id="entity-annotations">
</span>
<span id="entity-modifiers">
</span>
<span id="entity-kind">
package
</span>
<span id="entity-name">
dotty.tools.dotc.transform
</span>
</div>
<h1 class="section empty">
Constructors
</h1>
<div id="entity-constructors" class="entity-section empty">
</div>
<h1 class="section ">
Members
</h1>
<div id="entity-members" class="entity-section ">
<div id="dotty.tools.dotc.transform.patmat" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'dotty.tools.dotc.transform.patmat');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
package
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/patmat/index.html">dotty.tools.dotc.transform.patmat</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-dotty.tools.dotc.transform.patmat">
</div>
<div class="member-body-long" id ="long-body-dotty.tools.dotc.transform.patmat">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ArrayConstructors" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ArrayConstructors');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ArrayConstructors.html">ArrayConstructors</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ArrayConstructors">
<p>This phase rewrites calls to array constructors to newArray method in Dotty.runtime.Arrays module.</p>
<p>It assummes that generic arrays have already been ha...
</p>
</div>
<div class="member-body-long" id ="long-body-ArrayConstructors">
<p>This phase rewrites calls to array constructors to newArray method in Dotty.runtime.Arrays module.</p>
<p>It assummes that generic arrays have already been handled by typer(see Applications.convertNewGenericArray).
Additionally it optimizes calls to scala.Array.ofDim functions by replacing them with calls to newArray with specific dimensions</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="AugmentScala2Traits" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'AugmentScala2Traits');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/AugmentScala2Traits.html">AugmentScala2Traits</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-AugmentScala2Traits">
<p>This phase augments Scala2 traits with implementation classes and with additional members
needed for mixin composition.
These symbols would have been ad...
</p>
<ul></ul>
<p>
</p>
</div>
<div class="member-body-long" id ="long-body-AugmentScala2Traits">
<p>This phase augments Scala2 traits with implementation classes and with additional members
needed for mixin composition.
These symbols would have been added between Unpickling and Mixin in the Scala2 pipeline.
Specifcally, it adds</p>
<ul>
<li>an implementation class which defines a trait constructor and trait method implementations</li>
<li>trait setters for vals defined in traits</li>
</ul>
<p>Furthermore, it expands the names of all private getters and setters as well as super accessors in the trait and makes
them not-private.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="CapturedVars" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'CapturedVars');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/CapturedVars.html">CapturedVars</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-CapturedVars">
</div>
<div class="member-body-long" id ="long-body-CapturedVars">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="CheckReentrant" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'CheckReentrant');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/CheckReentrant.html">CheckReentrant</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-CheckReentrant">
<p>A no-op transform that checks whether the compiled sources are re-entrant.
If -Ycheck:reentrant is set, the phase makes sure that there are no variable...
</p>
</div>
<div class="member-body-long" id ="long-body-CheckReentrant">
<p>A no-op transform that checks whether the compiled sources are re-entrant.
If -Ycheck:reentrant is set, the phase makes sure that there are no variables
that are accessible from a global object. It excludes from checking paths that
are labeled with one of the annotations</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="CheckStatic" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'CheckStatic');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/CheckStatic.html">CheckStatic</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-CheckStatic">
<p>A transformer that check that requirements of Static fields\methods are implemented:
1. Only objects can have members annotated with <code>@static</code>
2. The fiel...
</p>
</div>
<div class="member-body-long" id ="long-body-CheckStatic">
<p>A transformer that check that requirements of Static fields\methods are implemented:
1. Only objects can have members annotated with <code>@static</code>
2. The fields annotated with <code>@static</code> should preceed any non-<code>@static</code> fields.
This ensures that we do not introduce surprises for users in initialization order.
3. If a member <code>foo</code> of an <code>object C</code> is annotated with <code>@static</code>,
the companion class <code>C</code> is not allowed to define term members with name <code>foo</code>.
4. If a member <code>foo</code> of an <code>object C</code> is annotated with <code>@static</code>, the companion class <code>C</code>
is not allowed to inherit classes that define a term member with name <code>foo</code>.
5. Only <code>@static</code> methods and vals are supported in companions of traits.
Java8 supports those, but not vars, and JavaScript does not have interfaces at all.
6. <code>@static</code> Lazy vals are currently unsupported.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ClassOf" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ClassOf');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ClassOf.html">ClassOf</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ClassOf">
<p>Rewrite <code>classOf</code> calls as follow:</p>
<p>For every primitive class C whose boxed class is called B:
classOf[C] -> B.TYPE
For every non-primitive class D:
classOf[D]</p>
</div>
<div class="member-body-long" id ="long-body-ClassOf">
<p>Rewrite <code>classOf</code> calls as follow:</p>
<p>For every primitive class C whose boxed class is called B:
classOf[C] -> B.TYPE
For every non-primitive class D:
classOf[D] -> Literal(Constant(erasure(D)))</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="CollectEntryPoints" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'CollectEntryPoints');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/CollectEntryPoints.html">CollectEntryPoints</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-CollectEntryPoints">
</div>
<div class="member-body-long" id ="long-body-CollectEntryPoints">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="Constructors" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'Constructors');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/Constructors.html">Constructors</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-Constructors">
<p>This transform
- moves initializers from body to constructor.
- makes all supercalls explicit
- also moves private fields that are accessed only from con...
</p>
</div>
<div class="member-body-long" id ="long-body-Constructors">
<p>This transform
- moves initializers from body to constructor.
- makes all supercalls explicit
- also moves private fields that are accessed only from constructor
into the constructor if possible.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="CrossCastAnd" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'CrossCastAnd');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/CrossCastAnd.html">CrossCastAnd</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-CrossCastAnd">
<p>This transform makes sure that all private member selections from
AndTypes are performed from the first component of AndType.
This is needed for correct...</p>
</div>
<div class="member-body-long" id ="long-body-CrossCastAnd">
<p>This transform makes sure that all private member selections from
AndTypes are performed from the first component of AndType.
This is needed for correctness of erasure. See <code>tests/run/PrivateAnd.scala</code></p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="CtxLazy" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'CtxLazy');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/CtxLazy.html">CtxLazy</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-CtxLazy">
<p>Utility class for lazy values whose evaluation depends on a context.
This should be used whenever the evaluation of a lazy expression
depends on some co...
</p>
<p>
</p>
</div>
<div class="member-body-long" id ="long-body-CtxLazy">
<p>Utility class for lazy values whose evaluation depends on a context.
This should be used whenever the evaluation of a lazy expression
depends on some context, but the value can be re-used afterwards
with a different context.</p>
<p>A typical use case is a lazy val in a phase object which exists once per root context where
the expression intiializing the lazy val depends only on the root context, but not any changes afterwards.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="DropInlined" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'DropInlined');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/DropInlined.html">DropInlined</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-DropInlined">
<p>Drop Inlined nodes</p>
</div>
<div class="member-body-long" id ="long-body-DropInlined">
<p>Drop Inlined nodes</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ElimByName" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ElimByName');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ElimByName.html">ElimByName</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ElimByName">
<p>This phase eliminates ExprTypes <code>=> T</code> as types of function parameters, and replaces them by
nullary function types. More precisely:</p>
<p>For the types of par...</p>
<pre><code>=> T ==> () => T
</code></pre>
<p>
</p>
<pre><code>x ==> x.apply() if x is a parameter that had type => T
</code></pre>
<p>
</p>
<pre><code>e.apply() ==> e if e.apply() is an argument to a call-by-name parameter
expr ==> () => expr if other expr is an argument to a call-by-name parameter
</code></pre>
<p>
</p>
<p>[T]</p>
<p></p>
<p>
</p>
<p>
</p>
<p>
</p>
</div>
<div class="member-body-long" id ="long-body-ElimByName">
<p>This phase eliminates ExprTypes <code>=> T</code> as types of function parameters, and replaces them by
nullary function types. More precisely:</p>
<p>For the types of parameter symbols:</p>
<pre><code>=> T ==> () => T
</code></pre>
<p>Note that <code>=> T</code> types are not eliminated in MethodTypes. This is done later at erasure.
Terms are rewritten as follows:</p>
<pre><code>x ==> x.apply() if x is a parameter that had type => T
</code></pre>
<p>Arguments to call-by-name parameters are translated as follows. First, the argument is
rewritten by the rules</p>
<pre><code>e.apply() ==> e if e.apply() is an argument to a call-by-name parameter
expr ==> () => expr if other expr is an argument to a call-by-name parameter
</code></pre>
<p>This makes the argument compatible with a parameter type of () => T, which will be the
formal parameter type at erasure. But to be -Ycheckable until then, any argument
ARG rewritten by the rules above is again wrapped in an application DummyApply(ARG)
where</p>
<p>DummyApply: [T](() => T): T</p>
<p>is a synthetic method defined in Definitions. Erasure will later strip these DummyApply wrappers.</p>
<p>Note: This scheme to have inconsistent types between method types (whose formal types are still
ExprTypes and parameter valdefs (which are now FunctionTypes) is not pretty. There are two
other options which have been abandoned or not yet pursued.</p>
<p>Option 1: Transform => T to () => T also in method and function types. The problem with this is
that is that it requires to look at every type, and this forces too much, causing
Cyclic Reference errors. Abandoned for this reason.</p>
<p>Option 2: Merge ElimByName with erasure, or have it run immediately before. This has not been
tried yet.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ElimErasedValueType" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ElimErasedValueType');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ElimErasedValueType.html">ElimErasedValueType</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ElimErasedValueType">
<p>This phase erases ErasedValueType to their underlying type.
It also removes the synthetic cast methods u2evt$ and evt2u$ which are
no longer needed afte...</p>
</div>
<div class="member-body-long" id ="long-body-ElimErasedValueType">
<p>This phase erases ErasedValueType to their underlying type.
It also removes the synthetic cast methods u2evt$ and evt2u$ which are
no longer needed afterwards.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ElimRepeated" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ElimRepeated');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ElimRepeated.html">ElimRepeated</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ElimRepeated">
<p>A transformer that removes repeated parameters (T*) from all types, replacing
them with Seq types.</p>
</div>
<div class="member-body-long" id ="long-body-ElimRepeated">
<p>A transformer that removes repeated parameters (T*) from all types, replacing
them with Seq types.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ElimStaticThis" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ElimStaticThis');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ElimStaticThis.html">ElimStaticThis</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ElimStaticThis">
<p>Replace This references to module classes in static methods by global identifiers to the
corresponding modules.</p>
</div>
<div class="member-body-long" id ="long-body-ElimStaticThis">
<p>Replace This references to module classes in static methods by global identifiers to the
corresponding modules.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="Erasure" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'Erasure');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/Erasure.html">Erasure</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-Erasure">
</div>
<div class="member-body-long" id ="long-body-Erasure">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="Erasure$" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'Erasure$');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
object
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/Erasure$.html">Erasure</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-Erasure$">
</div>
<div class="member-body-long" id ="long-body-Erasure$">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ExpandPrivate" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ExpandPrivate');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ExpandPrivate.html">ExpandPrivate</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ExpandPrivate">
<p>Make private term members that are accessed from another class
non-private by resetting the Private flag and expanding their name.</p>
<p>Make private accessor...
</p>
<p>
</p>
<p><a href="https://github.com/lampepfl/dotty/pull/784">https://github.com/lampepfl/dotty/pull/784</a>
<a href="https://github.com/lampepfl/dotty/issues/783">https://github.com/lampepfl/dotty/issues/783</a></p>
</div>
<div class="member-body-long" id ="long-body-ExpandPrivate">
<p>Make private term members that are accessed from another class
non-private by resetting the Private flag and expanding their name.</p>
<p>Make private accessor in value class not-private. Ihis is necessary to unbox
the value class when accessing it from separate compilation units</p>
<p>Also, make non-private any private parameter forwarders that forward to an inherited
public or protected parameter accessor with the same name as the forwarder.
This is necessary since private methods are not allowed to have the same name
as inherited public ones.</p>
<p>See discussion in <a href="https://github.com/lampepfl/dotty/pull/784">https://github.com/lampepfl/dotty/pull/784</a>
and <a href="https://github.com/lampepfl/dotty/issues/783">https://github.com/lampepfl/dotty/issues/783</a></p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ExpandSAMs" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ExpandSAMs');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ExpandSAMs.html">ExpandSAMs</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ExpandSAMs">
<p>Expand SAM closures that cannot be represented by the JVM as lambdas to anonymous classes.
These fall into five categories</p>
<ol>
<li>Partial function closures, we need to generate a isDefinedAt method for these.</li>
<li>Closures implementing non-trait classes.</li>
<li>Closures implementing classes that inherit from a class other than Object
(a lambda cannot not be a run-time subtype of such a class)</li>
<li>Closures that implement traits which run initialization code.</li>
<li>Closures that get synthesized abstract methods in the transformation pipeline. These methods can be
(1) superaccessors, (2) outer references, (3) accessors for fields.</li>
</ol>
</div>
<div class="member-body-long" id ="long-body-ExpandSAMs">
<p>Expand SAM closures that cannot be represented by the JVM as lambdas to anonymous classes.
These fall into five categories</p>
<ol>
<li>Partial function closures, we need to generate a isDefinedAt method for these.</li>
<li>Closures implementing non-trait classes.</li>
<li>Closures implementing classes that inherit from a class other than Object
(a lambda cannot not be a run-time subtype of such a class)</li>
<li>Closures that implement traits which run initialization code.</li>
<li>Closures that get synthesized abstract methods in the transformation pipeline. These methods can be
(1) superaccessors, (2) outer references, (3) accessors for fields.</li>
</ol>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ExplicitOuter" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ExplicitOuter');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ExplicitOuter.html">ExplicitOuter</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ExplicitOuter">
<p>This phase adds outer accessors to classes and traits that need them.
Compared to Scala 2.x, it tries to minimize the set of classes
that take outer acc...
</p>
<p>
</p>
<ul></ul>
<p>
</p>
</div>
<div class="member-body-long" id ="long-body-ExplicitOuter">
<p>This phase adds outer accessors to classes and traits that need them.
Compared to Scala 2.x, it tries to minimize the set of classes
that take outer accessors by scanning class implementations for
outer references.</p>
<p>The following things are delayed until erasure and are performed
by class OuterOps:</p>
<ul>
<li>add outer parameters to constructors</li>
<li>pass outer arguments in constructor calls</li>
</ul>
<p>replacement of outer this by outer paths is done in Erasure.
needs to run after pattern matcher as it can add outer checks and force creation of $outer</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ExplicitOuter$" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ExplicitOuter$');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
object
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ExplicitOuter$.html">ExplicitOuter</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ExplicitOuter$">
</div>
<div class="member-body-long" id ="long-body-ExplicitOuter$">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ExplicitSelf" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ExplicitSelf');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ExplicitSelf.html">ExplicitSelf</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ExplicitSelf">
<p>Transform references of the form</p>
<p>C.this.m</p>
<p>where <code>C</code> is a class with explicit self type and <code>C</code> is not a
subclass of the owner of <code>m</code> to</p>
<p>C.this.asInstanceOfS & C...</p>
<p>
</p>
<p></p>
</div>
<div class="member-body-long" id ="long-body-ExplicitSelf">
<p>Transform references of the form</p>
<p>C.this.m</p>
<p>where <code>C</code> is a class with explicit self type and <code>C</code> is not a
subclass of the owner of <code>m</code> to</p>
<p>C.this.asInstanceOf[S & C.this.type].m</p>
<p>where <code>S</code> is the self type of <code>C</code>.
See run/i789.scala for a test case why this is needed.</p>
<p>Also replaces idents referring to the self type with ThisTypes.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ExtensionMethods" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ExtensionMethods');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ExtensionMethods.html">ExtensionMethods</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ExtensionMethods">
<p>Perform Step 1 in the inline classes SIP: Creates extension methods for all
methods in a value class, except parameter or super accessors, or construct...</p>
<p>
[Erasure]
[ElimErasedValueType]
</p>
<p>
</p>
</div>
<div class="member-body-long" id ="long-body-ExtensionMethods">
<p>Perform Step 1 in the inline classes SIP: Creates extension methods for all
methods in a value class, except parameter or super accessors, or constructors.</p>
<p>Additionally, for a value class V, let U be the underlying type after erasure. We add
to the companion module of V two cast methods:
def u2evt$(x0: U): ErasedValueType(V, U)
def evt2u$(x0: ErasedValueType(V, U)): U
The casts are used in [[Erasure]] to make it typecheck, they are then removed
in [[ElimErasedValueType]].
This is different from the implementation of value classes in Scala 2
(see SIP-15) which uses <code>asInstanceOf</code> which does not typecheck.</p>
<p>Finally, if the constructor of a value class is private pr protected
it is widened to public.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ExtensionMethods$" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ExtensionMethods$');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
object
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ExtensionMethods$.html">ExtensionMethods</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ExtensionMethods$">
</div>
<div class="member-body-long" id ="long-body-ExtensionMethods$">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="FirstTransform" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'FirstTransform');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/FirstTransform.html">FirstTransform</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-FirstTransform">
<p>The first tree transform
- ensures there are companion objects for all classes except module classes
- eliminates some kinds of trees: Imports, NamedArg...
</p>
</div>
<div class="member-body-long" id ="long-body-FirstTransform">
<p>The first tree transform
- ensures there are companion objects for all classes except module classes
- eliminates some kinds of trees: Imports, NamedArgs
- stubs out native methods
- eliminates self tree in Template and self symbol in ClassInfo
- collapsess all type trees to trees of class TypeTree
- converts idempotent expressions with constant types</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="Flatten" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'Flatten');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/Flatten.html">Flatten</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-Flatten">
<p>Lift nested classes to toplevel</p>
</div>
<div class="member-body-long" id ="long-body-Flatten">
<p>Lift nested classes to toplevel</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="FullParameterization$" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'FullParameterization$');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
object
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/FullParameterization$.html">FullParameterization</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-FullParameterization$">
</div>
<div class="member-body-long" id ="long-body-FullParameterization$">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="FullParameterization" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'FullParameterization');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
trait
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/FullParameterization.html">FullParameterization</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-FullParameterization">
<p>Provides methods to produce fully parameterized versions of instance methods,
where the <code>this</code> of the enclosing class is abstracted out in an extra leadi...
</p>
<p></p>
<ul></ul>
<p>
</p>
<p>
</p>
<pre><code>class C(val a: String) extends AnyVal {
def foo[U <: a.type]: Unit = ...
}
</code></pre>
<p></p>
<pre><code>def foo$extension[U <: $this.a.type]($this: C): Unit = ...
</code></pre>
<p>
</p>
<pre><code>def foo$extension($this: C)[U <: $this.a.type]: Unit = ...
</code></pre>
</div>
<div class="member-body-long" id ="long-body-FullParameterization">
<p>Provides methods to produce fully parameterized versions of instance methods,
where the <code>this</code> of the enclosing class is abstracted out in an extra leading
<code>$this</code> parameter and type parameters of the class become additional type
parameters of the fully parameterized method.</p>
<p>Example usage scenarios are:</p>
<ul>
<li>extension methods of value classes</li>
<li>implementations of trait methods</li>
<li>static protected accessors</li>
<li>local methods produced by tailrec transform</li>
</ul>
<p>Note that the methods lift out type parameters of the class containing
the instance method, but not type parameters of enclosing classes. The
fully instantiated method therefore needs to be put in a scope "close"
to the original method, i.e. they need to share the same outer pointer.
Examples of legal positions are: in the companion object, or as a local
method inside the original method.</p>
<p>Note: The scheme does not handle yet methods where type parameter bounds
depend on value parameters of the enclosing class, as in:</p>
<pre><code>class C(val a: String) extends AnyVal {
def foo[U <: a.type]: Unit = ...
}
</code></pre>
<p>The expansion of method <code>foo</code> would lead to</p>
<pre><code>def foo$extension[U <: $this.a.type]($this: C): Unit = ...
</code></pre>
<p>which is not typable. Not clear yet what to do. Maybe allow PolyTypes
to follow method parameters and translate to the following:</p>
<pre><code>def foo$extension($this: C)[U <: $this.a.type]: Unit = ...
</code></pre>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="FunctionalInterfaces" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'FunctionalInterfaces');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/FunctionalInterfaces.html">FunctionalInterfaces</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-FunctionalInterfaces">
<p>Rewires closures to implement more specific types of Functions.</p>
</div>
<div class="member-body-long" id ="long-body-FunctionalInterfaces">
<p>Rewires closures to implement more specific types of Functions.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="GetClass" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'GetClass');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/GetClass.html">GetClass</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-GetClass">
<p>Rewrite <code>getClass</code> calls as follow:</p>
<p>For every instance of primitive class C whose boxed class is called B:
instanceC.getClass -> B.TYPE
For every instan...
</p>
</div>
<div class="member-body-long" id ="long-body-GetClass">
<p>Rewrite <code>getClass</code> calls as follow:</p>
<p>For every instance of primitive class C whose boxed class is called B:
instanceC.getClass -> B.TYPE
For every instance of non-primitive class D:
instanceD.getClass -> instanceD.getClass</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="Getters" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'Getters');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/Getters.html">Getters</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-Getters">
<p>Performs the following rewritings for fields of a class:</p>
<p><mods> val x: T = e
--> <mods> <stable> <accessor> def x: T = e
<mods> var x: T = e
--> <mods> <accessor> def x: T = e</p>
<p><mods> val x: T
--> <mods> <stable> <accessor> def x: T</p>
<p><mods> laz...
<mods><accessor></p>
<p><mods>
<mods><accessor></p>
<p><mods><module>
<mods><module><accessor></p>
<p></p>
<ul></ul>
<p></p>
<p>
</p>
<p></p>
</div>
<div class="member-body-long" id ="long-body-Getters">
<p>Performs the following rewritings for fields of a class:</p>
<p><mods> val x: T = e
--> <mods> <stable> <accessor> def x: T = e
<mods> var x: T = e
--> <mods> <accessor> def x: T = e</p>
<p><mods> val x: T
--> <mods> <stable> <accessor> def x: T</p>
<p><mods> lazy val x: T = e
--> <mods> <accessor> lazy def x: T =e</p>
<p><mods> var x: T
--> <mods> <accessor> def x: T</p>
<p><mods> non-static <module> val x$ = e
--> <mods> <module> <accessor> def x$ = e</p>
<p>Omitted from the rewritings are</p>
<ul>
<li>private[this] fields in classes (excluding traits, value classes)</li>
<li>fields generated for static modules (TODO: needed?)</li>
<li>parameters, static fields, and fields coming from Java</li>
</ul>
<p>Furthermore, assignments to mutable vars are replaced by setter calls</p>
<p>p.x = e
--> p.x_=(e)</p>
<p>No fields are generated yet. This is done later in phase Memoize.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="InterceptedMethods" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'InterceptedMethods');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/InterceptedMethods.html">InterceptedMethods</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-InterceptedMethods">
<p>Replace member references as follows:</p>
<ul>
<li><code>x != y</code> for != in class Any becomes <code>!(x == y)</code> with == in class Any.</li>
<li><code>x.##</code> for ## in NullClass becomes <code>0</code></li>
<li><code>x.##</code> for ## in Any becomes calls to ScalaRunTime.hash,
using the most precise overload available</li>
<li><code>x.getClass</code> for getClass in primitives becomes <code>x.getClass</code> with getClass in class Object.</li>
</ul>
</div>
<div class="member-body-long" id ="long-body-InterceptedMethods">
<p>Replace member references as follows:</p>
<ul>
<li><code>x != y</code> for != in class Any becomes <code>!(x == y)</code> with == in class Any.</li>
<li><code>x.##</code> for ## in NullClass becomes <code>0</code></li>
<li><code>x.##</code> for ## in Any becomes calls to ScalaRunTime.hash,
using the most precise overload available</li>
<li><code>x.getClass</code> for getClass in primitives becomes <code>x.getClass</code> with getClass in class Object.</li>
</ul>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="IsInstanceOfEvaluator" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'IsInstanceOfEvaluator');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/IsInstanceOfEvaluator.html">IsInstanceOfEvaluator</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-IsInstanceOfEvaluator">
<p>Implements partial evaluation of <code>sc.isInstanceOf[Sel]</code> according to:</p>
<table>
<thead>
<tr><th align="right">Sel\sc</th><th align="center">trait</th><th align="center">class</th><th align="center">final class</th></tr>
</thead>
<tbody>
<tr><td align="right"></td><td align="center"></td><td align="center"></td><td align="center"></td></tr>
<tr><td align="right"></td><td align="center"></td><td align="center"></td><td align="center"></td></tr>
<tr><td align="right"></td><td align="center"></td><td align="center"></td><td align="center"></td></tr>
</tbody>
</table>
<p>
</p>
<p></p>
<ol></ol>
</div>
<div class="member-body-long" id ="long-body-IsInstanceOfEvaluator">
<p>Implements partial evaluation of <code>sc.isInstanceOf[Sel]</code> according to:</p>
<table>
<thead>
<tr><th align="right">Sel\sc</th><th align="center">trait</th><th align="center">class</th><th align="center">final class</th></tr>
</thead>
<tbody>
<tr><td align="right">trait</td><td align="center">?</td><td align="center">?</td><td align="center">statically known</td></tr>
<tr><td align="right">class</td><td align="center">?</td><td align="center">false if classes unrelated</td><td align="center">statically known</td></tr>
<tr><td align="right">final class</td><td align="center">false if classes unrelated</td><td align="center">false if classes unrelated</td><td align="center">statically known</td></tr>
</tbody>
</table>
<p>This is a generalized solution to raising an error on unreachable match
cases and warnings on other statically known results of <code>isInstanceOf</code>.</p>
<p>Steps taken:</p>
<ol>
<li><code>evalTypeApply</code> will establish the matrix and choose the appropriate
handling for the case:
<ul>
<li>Sel/sc is a value class or scrutinee is <code>Any</code></li>
<li><code>handleStaticallyKnown</code></li>
<li><code>falseIfUnrelated</code> with <code>scrutinee <:< selector</code></li>
<li><code>handleFalseUnrelated</code></li>
<li>leave as is (<code>happens</code>)</li>
</ul>
</li>
<li>Rewrite according to steps taken in 1</li>
</ol>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="LambdaLift" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'LambdaLift');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/LambdaLift.html">LambdaLift</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-LambdaLift">
<p>This phase performs the necessary rewritings to eliminate classes and methods
nested in other methods. In detail:
1. It adds all free variables of local...
</p>
<p>
</p>
<p>
</p>
<p>
</p>
</div>
<div class="member-body-long" id ="long-body-LambdaLift">
<p>This phase performs the necessary rewritings to eliminate classes and methods
nested in other methods. In detail:
1. It adds all free variables of local functions as additional parameters (proxies).
2. It rebinds references to free variables to the corresponding proxies,
3. It lifts all local functions and classes out as far as possible, but at least
to the enclosing class.
4. It stores free variables of non-trait classes as additional fields of the class.
The fields serve as proxies for methods in the class, which avoids the need
of passing additional parameters to these methods.</p>
<p>A particularly tricky case are local traits. These cannot store free variables
as field proxies, because LambdaLift runs after Mixin, so the fields cannot be
expanded anymore. Instead, methods of local traits get free variables of
the trait as additional proxy parameters. The difference between local classes
and local traits is illustrated by the two rewritings below.</p>
<p>def f(x: Int) = { def f(x: Int) = new C(x).f2
class C { ==> class C(x$1: Int) {
def f2 = x def f2 = x$1
} }
new C().f2
}</p>
<p>def f(x: Int) = { def f(x: Int) = new C().f2(x)
trait T { ==> trait T
def f2 = x def f2(x$1: Int) = x$1
} }
class C extends T class C extends T
new C().f2
}</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="LambdaLift$" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'LambdaLift$');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
object
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/LambdaLift$.html">LambdaLift</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-LambdaLift$">
</div>
<div class="member-body-long" id ="long-body-LambdaLift$">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="LazyVals" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'LazyVals');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/LazyVals.html">LazyVals</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-LazyVals">
</div>
<div class="member-body-long" id ="long-body-LazyVals">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="LazyVals$" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'LazyVals$');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
object
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/LazyVals$.html">LazyVals</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-LazyVals$">
</div>
<div class="member-body-long" id ="long-body-LazyVals$">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="LiftTry" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'LiftTry');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/LiftTry.html">LiftTry</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-LiftTry">
<p>Lifts try's that might be executed on non-empty expression stacks
to their own methods. I.e.</p>
<pre><code>try body catch handler
</code></pre>
<p>is lifted to</p>
<pre><code>{ def liftedTree$n() = try body catch handler; liftedTree$n() }
</code></pre>
</div>
<div class="member-body-long" id ="long-body-LiftTry">
<p>Lifts try's that might be executed on non-empty expression stacks
to their own methods. I.e.</p>
<pre><code>try body catch handler
</code></pre>
<p>is lifted to</p>
<pre><code>{ def liftedTree$n() = try body catch handler; liftedTree$n() }
</code></pre>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="LinkScala2ImplClasses" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'LinkScala2ImplClasses');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/LinkScala2ImplClasses.html">LinkScala2ImplClasses</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-LinkScala2ImplClasses">
<p>Rewrite calls</p>
<p>super[M].f(args)</p>
<p>where M is a Scala2 trait implemented by the current class to</p>
<p>M$class.f(this, args)</p>
<p>provided the implementation class M$class...</p>
</div>
<div class="member-body-long" id ="long-body-LinkScala2ImplClasses">
<p>Rewrite calls</p>
<p>super[M].f(args)</p>
<p>where M is a Scala2 trait implemented by the current class to</p>
<p>M$class.f(this, args)</p>
<p>provided the implementation class M$class defines a corresponding function <code>f</code>.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="MacroTransform" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'MacroTransform');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
abstract
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/MacroTransform.html">MacroTransform</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-MacroTransform">
<p>A base class for transforms.
A transform contains a compiler phase which applies a tree transformer.</p>
</div>
<div class="member-body-long" id ="long-body-MacroTransform">
<p>A base class for transforms.
A transform contains a compiler phase which applies a tree transformer.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="Memoize" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'Memoize');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/Memoize.html">Memoize</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-Memoize">
<p>Provides the implementations of all getters and setters, introducing
fields to hold the value accessed by them.
TODO: Make LazyVals a part of this phase...</p>
<p><accessor><stable><mods>
<accessor><stable><mods></p>
<p><accessor><mods>
<accessor><mods></p>
<p><accessor><mods>
<accessor><mods></p>
</div>
<div class="member-body-long" id ="long-body-Memoize">
<p>Provides the implementations of all getters and setters, introducing
fields to hold the value accessed by them.
TODO: Make LazyVals a part of this phase?</p>
<p><accessor> <stable> <mods> def x(): T = e
--> private val x: T = e
<accessor> <stable> <mods> def x(): T = x</p>
<p><accessor> <mods> def x(): T = e
--> private var x: T = e
<accessor> <mods> def x(): T = x</p>
<p><accessor> <mods> def x_=(y: T): Unit = ()
--> <accessor> <mods> def x_=(y: T): Unit = x = y</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="Mixin" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'Mixin');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/Mixin.html">Mixin</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-Mixin">
<p>This phase performs the following transformations:</p>
<ol>
<li>
<p>(done in <code>traitDefs</code> and <code>transformSym</code>) Map every concrete trait getter</p>
<p><mods> def x(): T = expr</p>
</li>
</ol>
<p>to the pair of definitions:</p>
<pre><code> <mods> def x(): T
protected def initial$x(): T = { stats; expr }
</code></pre>
<p>where <code>stats</code> comprises all statements between either the start of the tr...
</p>
<ol></ol>
<p></p>
<pre><code><mods> def x_=(y: T)
</code></pre>
<ol></ol>
<p>
</p>
</div>
<div class="member-body-long" id ="long-body-Mixin">
<p>This phase performs the following transformations:</p>
<ol>
<li>
<p>(done in <code>traitDefs</code> and <code>transformSym</code>) Map every concrete trait getter</p>
<p><mods> def x(): T = expr</p>
</li>
</ol>
<p>to the pair of definitions:</p>
<pre><code> <mods> def x(): T
protected def initial$x(): T = { stats; expr }
</code></pre>
<p>where <code>stats</code> comprises all statements between either the start of the trait
or the previous field definition which are not definitions (i.e. are executed for
their side effects).</p>
<ol>
<li>
<p>(done in <code>traitDefs</code>) Make every concrete trait setter</p>
<p><mods> def x_=(y: T) = ()</p>
</li>
</ol>
<p>deferred by mapping it to</p>
<pre><code><mods> def x_=(y: T)
</code></pre>
<ol>
<li>
<p>For a non-trait class C:</p>
<p>For every trait M directly implemented by the class (see SymUtils.mixin), in
reverse linearization order, add the following definitions to C:</p>
<pre><code>3.1 (done in `traitInits`) For every parameter accessor `<mods> def x(): T` in M,
in order of textual occurrence, add
<mods> def x() = e
where `e` is the constructor argument in C that corresponds to `x`. Issue
an error if no such argument exists.
3.2 (done in `traitInits`) For every concrete trait getter `<mods> def x(): T` in M
which is not a parameter accessor, in order of textual occurrence, produce the following:
3.2.1 If `x` is also a member of `C`, and M is a Dotty trait:
<mods> def x(): T = super[M].initial$x()
3.2.2 If `x` is also a member of `C`, and M is a Scala 2.x trait:
<mods> def x(): T = _
3.2.3 If `x` is not a member of `C`, and M is a Dotty trait:
super[M].initial$x()
3.2.4 If `x` is not a member of `C`, and M is a Scala2.x trait, nothing gets added.
3.3 (done in `superCallOpt`) The call:
super[M].<init>
3.4 (done in `setters`) For every concrete setter `<mods> def x_=(y: T)` in M:
<mods> def x_=(y: T) = ()
</code></pre>
</li>
<li>
<p>(done in <code>transformTemplate</code> and <code>transformSym</code>) Drop all parameters from trait
constructors.</p>
</li>
<li>(done in <code>transformSym</code>) Drop ParamAccessor flag from all parameter accessors in traits.</li>
</ol>
<p>Conceptually, this is the second half of the previous mixin phase. It needs to run
after erasure because it copies references to possibly private inner classes and objects
into enclosing classes where they are not visible. This can only be done if all references
are symbolic.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="MixinOps" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'MixinOps');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/MixinOps.html">MixinOps</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-MixinOps">
</div>
<div class="member-body-long" id ="long-body-MixinOps">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="MoveStatics" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'MoveStatics');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/MoveStatics.html">MoveStatics</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-MoveStatics">
<p>Move static methods from companion to the class itself</p>
</div>
<div class="member-body-long" id ="long-body-MoveStatics">
<p>Move static methods from companion to the class itself</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="NonLocalReturns" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'NonLocalReturns');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/NonLocalReturns.html">NonLocalReturns</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-NonLocalReturns">
<p>Implement non-local returns using NonLocalReturnControl exceptions.</p>
</div>
<div class="member-body-long" id ="long-body-NonLocalReturns">
<p>Implement non-local returns using NonLocalReturnControl exceptions.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="NonLocalReturns$" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'NonLocalReturns$');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
object
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/NonLocalReturns$.html">NonLocalReturns</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-NonLocalReturns$">
</div>
<div class="member-body-long" id ="long-body-NonLocalReturns$">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="NormalizeFlags" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'NormalizeFlags');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/NormalizeFlags.html">NormalizeFlags</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-NormalizeFlags">
<ol>
<li>Widens all private[this] and protected[this] qualifiers to just private/protected</li>
<li>Sets PureInterface flag for traits that only have pure interface members and that
do not have initialization code. A pure interface member is either an abstract
or alias type definition or a deferred val or def.</li>
</ol>
</div>
<div class="member-body-long" id ="long-body-NormalizeFlags">
<ol>
<li>Widens all private[this] and protected[this] qualifiers to just private/protected</li>
<li>Sets PureInterface flag for traits that only have pure interface members and that
do not have initialization code. A pure interface member is either an abstract
or alias type definition or a deferred val or def.</li>
</ol>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="OverridingPairs$" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'OverridingPairs$');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
object
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/OverridingPairs$.html">OverridingPairs</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-OverridingPairs$">
<p>A module that can produce a kind of iterator (<code>Cursor</code>),
which yields all pairs of overriding/overridden symbols
that are visible in some baseclass, unles...
</p>
<p>
</p>
</div>
<div class="member-body-long" id ="long-body-OverridingPairs$">
<p>A module that can produce a kind of iterator (<code>Cursor</code>),
which yields all pairs of overriding/overridden symbols
that are visible in some baseclass, unless there's a parent class
that already contains the same pairs.</p>
<p>Adapted from the 2.9 version of OverridingPairs. The 2.10 version is IMO
way too unwieldy to be maintained.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ParamForwarding" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ParamForwarding');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ParamForwarding.html">ParamForwarding</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ParamForwarding">
<p>For all parameter accessors</p>
<pre><code>val x: T = ...
</code></pre>
<p>if
(1) x is forwarded in the supercall to a parameter that's also named <code>x</code>
(2) the superclass parameter accessor for <code>x</code> is acce...
</p>
<pre><code>def x: T = super.x.asInstanceOf[T]
</code></pre>
<p>
</p>
</div>
<div class="member-body-long" id ="long-body-ParamForwarding">
<p>For all parameter accessors</p>
<pre><code>val x: T = ...
</code></pre>
<p>if
(1) x is forwarded in the supercall to a parameter that's also named <code>x</code>
(2) the superclass parameter accessor for <code>x</code> is accessible from the current class
change the accessor to</p>
<pre><code>def x: T = super.x.asInstanceOf[T]
</code></pre>
<p>Do the same also if there are intermediate inaccessible parameter accessor forwarders.
The aim of this transformation is to avoid redundant parameter accessor fields.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="PatternMatcher" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'PatternMatcher');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/PatternMatcher.html">PatternMatcher</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-PatternMatcher">
<p>This transform eliminates patterns. Right now it's a dummy.
Awaiting the real pattern matcher.
elimRepeated is required
TODO: outer tests are not generat...</p>
</div>
<div class="member-body-long" id ="long-body-PatternMatcher">
<p>This transform eliminates patterns. Right now it's a dummy.
Awaiting the real pattern matcher.
elimRepeated is required
TODO: outer tests are not generated yet.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="Pickler" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'Pickler');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/Pickler.html">Pickler</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-Pickler">
<p>This phase pickles trees</p>
</div>
<div class="member-body-long" id ="long-body-Pickler">
<p>This phase pickles trees</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="PostTyper" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'PostTyper');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/PostTyper.html">PostTyper</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-PostTyper">
<p>A macro transform that runs immediately after typer and that performs the following functions:</p>
<p>(1) Add super accessors and protected accessors (@see Su...</p>
<p>
</p>
<p></p>
<p></p>
<p></p>
<p></p>
<p></p>
<p></p>
<p></p>
<p></p>
<p>
</p>
<p>
</p>
</div>
<div class="member-body-long" id ="long-body-PostTyper">
<p>A macro transform that runs immediately after typer and that performs the following functions:</p>
<p>(1) Add super accessors and protected accessors (@see SuperAccessors)</p>
<p>(2) Convert parameter fields that have the same name as a corresponding
public parameter field in a superclass to a forwarder to the superclass
field (corresponding = super class field is initialized with subclass field)
(@see ForwardParamAccessors)</p>
<p>(3) Add synthetic methods (@see SyntheticMethods)</p>
<p>(4) Check that <code>New</code> nodes can be instantiated, and that annotations are valid</p>
<p>(5) Convert all trees representing types to TypeTrees.</p>
<p>(6) Check the bounds of AppliedTypeTrees</p>
<p>(7) Insert <code>.package</code> for selections of package object members</p>
<p>(8) Replaces self references by name with <code>this</code></p>
<p>(9) Adds SourceFile annotations to all top-level classes and objects</p>
<p>(10) Adds Child annotations to all sealed classes</p>
<p>(11) Minimizes <code>call</code> fields of <code>Inline</code> nodes to just point to the toplevel
class from which code was inlined.</p>
<p>The reason for making this a macro transform is that some functions (in particular
super and protected accessors and instantiation checks) are naturally top-down and
don't lend themselves to the bottom-up approach of a mini phase. The other two functions
(forwarding param accessors and synthetic methods) only apply to templates and fit
mini-phase or subfunction of a macro phase equally well. But taken by themselves
they do not warrant their own group of miniphases before pickling.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="PrimitiveForwarders" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'PrimitiveForwarders');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/PrimitiveForwarders.html">PrimitiveForwarders</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-PrimitiveForwarders">
<p>This phase adds forwarder where mixedin generic and primitive typed methods have a missmatch.
In particular for every method that is declared both as g...
<mods><a href="#"></a>
</p>
<p><mods><a href="#"></a>[N]<a href="#"></a></p>
<p>
</p>
</div>
<div class="member-body-long" id ="long-body-PrimitiveForwarders">
<p>This phase adds forwarder where mixedin generic and primitive typed methods have a missmatch.
In particular for every method that is declared both as generic with a primitive type and with a primitive type
<code><mods> def f[Ts](ps1)...(psN): U</code> in trait M<code>and</code><mods> def f<a href="#">Ts</a>...(psN): V = ...<code>in implemented in N</code>
where U is a primitive and V a polymorphic type (or vice versa) needs:</p>
<p><mods> def f<a href="#">Ts</a>...(psN): U = super[N].f<a href="#">Ts</a>...(psN)</p>
<p>IMPORTANT: When\If Valhalla happens, we'll need to move mixin before erasure and than this code will need to be rewritten
as it will instead change super-class.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ResolveSuper" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ResolveSuper');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ResolveSuper.html">ResolveSuper</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ResolveSuper">
<p>This phase adds super accessors and method overrides where
linearization differs from Java's rule for default methods in interfaces.
In particular:</p>
<pre><code> For every trait M directly implemented by the class (see SymUtils.mixin), in
reverse linearization order, add the following definitions to C:
3.1 (done in `superAccessors`) For every superAccessor
`<mods> def super$f[Ts](ps1)...(psN): U` in M:
<mods> def super$f[Ts](ps1)...(psN): U = super[S].f[Ts](ps1)...(psN)
where `S` is the superclass of `M` in the linearization of `C`.
3.2 (done in `methodOverrides`) For every method
`<mods> def f[Ts](ps1)...(psN): U` in M` that needs to be disambiguated:
<mods> def f[Ts](ps1)...(psN): U = super[M].f[Ts](ps1)...(psN)
A method in M needs to be disambiguated if it is concrete, not overridden in C,
and if it overrides another concrete method.
</code></pre>
<p>This...
</p>
</div>
<div class="member-body-long" id ="long-body-ResolveSuper">
<p>This phase adds super accessors and method overrides where
linearization differs from Java's rule for default methods in interfaces.
In particular:</p>
<pre><code> For every trait M directly implemented by the class (see SymUtils.mixin), in
reverse linearization order, add the following definitions to C:
3.1 (done in `superAccessors`) For every superAccessor
`<mods> def super$f[Ts](ps1)...(psN): U` in M:
<mods> def super$f[Ts](ps1)...(psN): U = super[S].f[Ts](ps1)...(psN)
where `S` is the superclass of `M` in the linearization of `C`.
3.2 (done in `methodOverrides`) For every method
`<mods> def f[Ts](ps1)...(psN): U` in M` that needs to be disambiguated:
<mods> def f[Ts](ps1)...(psN): U = super[M].f[Ts](ps1)...(psN)
A method in M needs to be disambiguated if it is concrete, not overridden in C,
and if it overrides another concrete method.
</code></pre>
<p>This is the first part of what was the mixin phase. It is complemented by
Mixin, which runs after erasure.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ResolveSuper$" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ResolveSuper$');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
object
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ResolveSuper$.html">ResolveSuper</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ResolveSuper$">
</div>
<div class="member-body-long" id ="long-body-ResolveSuper$">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="RestoreScopes" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'RestoreScopes');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/RestoreScopes.html">RestoreScopes</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-RestoreScopes">
<p>The preceding lambda lift and flatten phases move symbols to different scopes
and rename them. This miniphase cleans up afterwards and makes sure that...
</p>
</div>
<div class="member-body-long" id ="long-body-RestoreScopes">
<p>The preceding lambda lift and flatten phases move symbols to different scopes
and rename them. This miniphase cleans up afterwards and makes sure that all
class scopes contain the symbols defined in them.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="SelectStatic" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'SelectStatic');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/SelectStatic.html">SelectStatic</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-SelectStatic">
<p>Removes selects that would be compiled into GetStatic
otherwise backend needs to be aware that some qualifiers need to be dropped.
Similar transformatio...</p>
</div>
<div class="member-body-long" id ="long-body-SelectStatic">
<p>Removes selects that would be compiled into GetStatic
otherwise backend needs to be aware that some qualifiers need to be dropped.
Similar transformation seems to be performed by flatten in nsc</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="SeqLiterals" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'SeqLiterals');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/SeqLiterals.html">SeqLiterals</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-SeqLiterals">
<p>A transformer that eliminates SeqLiteral's, transforming <code>SeqLiteral(elems)</code> to an operation
equivalent to</p>
<pre><code>JavaSeqLiteral(elems).toSeq
</code></pre>
<p>Instead of <code>toSeq</code>, which takes an implicit, the...
</p>
</div>
<div class="member-body-long" id ="long-body-SeqLiterals">
<p>A transformer that eliminates SeqLiteral's, transforming <code>SeqLiteral(elems)</code> to an operation
equivalent to</p>
<pre><code>JavaSeqLiteral(elems).toSeq
</code></pre>
<p>Instead of <code>toSeq</code>, which takes an implicit, the appropriate "wrapArray" method
is called directly. The reason for this step is that JavaSeqLiterals, being arrays
keep a precise type after erasure, whereas SeqLiterals only get the erased type <code>Seq</code>,</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ShortcutImplicits" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ShortcutImplicits');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ShortcutImplicits.html">ShortcutImplicits</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ShortcutImplicits">
<p>This phase optimizes code using implicit function types, by applying two rewrite rules.
Let IF be the implicit function type</p>
<pre><code>implicit Us => R
</code></pre>
<p>(1) A method definition</p>
<pre><code>def m(xs: Ts): IF = implicit (ys: Us) => E
</code></pre>
<p>is e...</p>
<pre><code>def m(xs: Ts): IF = implicit (ys: Us) => m$direct(xs)(ys)
def m$direct(xs: Ts)(ys: Us): R = E
</code></pre>
<p>
</p>
<p></p>
<p></p>
<p>
</p>
<p>
</p>
</div>
<div class="member-body-long" id ="long-body-ShortcutImplicits">
<p>This phase optimizes code using implicit function types, by applying two rewrite rules.
Let IF be the implicit function type</p>
<pre><code>implicit Us => R
</code></pre>
<p>(1) A method definition</p>
<pre><code>def m(xs: Ts): IF = implicit (ys: Us) => E
</code></pre>
<p>is expanded to two methods:</p>
<pre><code>def m(xs: Ts): IF = implicit (ys: Us) => m$direct(xs)(ys)
def m$direct(xs: Ts)(ys: Us): R = E
</code></pre>
<p>(and equivalently for methods with type parameters or a different number of value parameter lists).
An abstract method definition</p>
<p>def m(xs: Ts): IF</p>
<p>is expanded to:</p>
<p>def m(xs: Ts): IF
def m$direct(xs: Ts)(ys: Us): R</p>
<p>(2) A reference <code>qual.apply</code> where <code>qual</code> has implicit function type and
<code>qual</code> refers to a method <code>m</code> is rewritten to a reference to <code>m$direct</code>,
keeping the same type and value arguments as they are found in <code>qual</code>.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="Splitter" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'Splitter');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/Splitter.html">Splitter</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-Splitter">
<p>Distribute applications into Block and If nodes</p>
</div>
<div class="member-body-long" id ="long-body-Splitter">
<p>Distribute applications into Block and If nodes</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="SuperAccessors" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'SuperAccessors');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/SuperAccessors.html">SuperAccessors</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-SuperAccessors">
<p>This class performs the following functions:</p>
<p>(1) Adds super accessors for all super calls that either
appear in a trait or have as a target a member of...</p>
<p>
</p>
<p></p>
<p>
</p>
<p>
</p>
<p></p>
<p></p>
</div>
<div class="member-body-long" id ="long-body-SuperAccessors">
<p>This class performs the following functions:</p>
<p>(1) Adds super accessors for all super calls that either
appear in a trait or have as a target a member of some outer class.</p>
<p>(2) Adds protected accessors if the access to the protected member happens
in a class which is not a subclass of the member's owner.</p>
<p>It also checks that:</p>
<p>(1) Symbols accessed from super are not abstract, or are overridden by
an abstract override.</p>
<p>(2) If a symbol accessed from super is defined in a real class (not a trait),
there are no abstract members which override this member in Java's rules
(see SI-4989; such an access would lead to illegal bytecode)</p>
<p>(3) Super calls do not go to some synthetic members of Any (see isDisallowed)</p>
<p>(4) Super calls do not go to synthetic field accessors</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="SymUtils" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'SymUtils');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/SymUtils.html">SymUtils</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-SymUtils">
<p>A decorator that provides methods on symbols
that are needed in the transformer pipeline.</p>
</div>
<div class="member-body-long" id ="long-body-SymUtils">
<p>A decorator that provides methods on symbols
that are needed in the transformer pipeline.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="SymUtils$" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'SymUtils$');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
object
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/SymUtils$.html">SymUtils</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-SymUtils$">
</div>
<div class="member-body-long" id ="long-body-SymUtils$">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="SymbolOrdering" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'SymbolOrdering');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/SymbolOrdering.html">SymbolOrdering</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-SymbolOrdering">
</div>
<div class="member-body-long" id ="long-body-SymbolOrdering">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="SyntheticMethods" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'SyntheticMethods');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/SyntheticMethods.html">SyntheticMethods</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-SyntheticMethods">
<p>Synthetic method implementations for case classes, case objects,
and value classes.
Selectively added to case classes/objects, unless a non-default
imple...
</p>
<p>
</p>
<p>
</p>
</div>
<div class="member-body-long" id ="long-body-SyntheticMethods">
<p>Synthetic method implementations for case classes, case objects,
and value classes.
Selectively added to case classes/objects, unless a non-default
implementation already exists:
def equals(other: Any): Boolean
def hashCode(): Int
def canEqual(other: Any): Boolean
def toString(): String
def productArity: Int
def productPrefix: String
Special handling:
protected def readResolve(): AnyRef</p>
<p>Selectively added to value classes, unless a non-default
implementation already exists:</p>
<p>def equals(other: Any): Boolean
def hashCode(): Int</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="TailRec" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'TailRec');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/TailRec.html">TailRec</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-TailRec">
<p>A Tail Rec Transformer</p>
</div>
<div class="member-body-long" id ="long-body-TailRec">
<p>A Tail Rec Transformer</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="TailRec$" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'TailRec$');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
object
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/TailRec$.html">TailRec</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-TailRec$">
</div>
<div class="member-body-long" id ="long-body-TailRec$">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="TreeChecker" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'TreeChecker');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/TreeChecker.html">TreeChecker</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-TreeChecker">
<p>Run by -Ycheck option after a given phase, this class retypes all syntax trees
and verifies that the type of each tree node so obtained conforms to the...
</p>
<ul></ul>
</div>
<div class="member-body-long" id ="long-body-TreeChecker">
<p>Run by -Ycheck option after a given phase, this class retypes all syntax trees
and verifies that the type of each tree node so obtained conforms to the type found in the tree node.
It also performs the following checks:</p>
<ul>
<li>The owner of each definition is the same as the owner of the current typing context.</li>
<li>Ident nodes do not refer to a denotation that would need a select to be accessible
(see tpd.needsSelect).</li>
<li>After typer, identifiers and select nodes refer to terms only (all types should be
represented as TypeTrees then).</li>
</ul>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="TreeExtractors$" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'TreeExtractors$');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
object
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/TreeExtractors$.html">TreeExtractors</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-TreeExtractors$">
</div>
<div class="member-body-long" id ="long-body-TreeExtractors$">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="TreeGen$" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'TreeGen$');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
object
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/TreeGen$.html">TreeGen</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-TreeGen$">
</div>
<div class="member-body-long" id ="long-body-TreeGen$">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="TreeTransforms$" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'TreeTransforms$');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
object
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/TreeTransforms$.html">TreeTransforms</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-TreeTransforms$">
</div>
<div class="member-body-long" id ="long-body-TreeTransforms$">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="TryCatchPatterns" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'TryCatchPatterns');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/TryCatchPatterns.html">TryCatchPatterns</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-TryCatchPatterns">
<p>Compiles the cases that can not be handled by primitive catch cases as a common pattern match.</p>
<p>The following code:</p>
<p></p>
<p>
</p>
</div>
<div class="member-body-long" id ="long-body-TryCatchPatterns">
<p>Compiles the cases that can not be handled by primitive catch cases as a common pattern match.</p>
<p>The following code:</p>
<pre><code>try { <code> }
catch {
<tryCases> // Cases that can be handled by catch
<patternMatchCases> // Cases starting with first one that can't be handled by catch
}
</code></pre>
<p>will become:</p>
<pre><code>try { <code> }
catch {
<tryCases>
case e => e match {
<patternMatchCases>
}
}
</code></pre>
<p>Cases that are not supported include:
- Applies and unapplies
- Idents
- Alternatives
- <code>case _: T =></code> where <code>T</code> is not <code>Throwable</code></p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="TypeTestsCasts" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'TypeTestsCasts');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
trait
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/TypeTestsCasts.html">TypeTestsCasts</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-TypeTestsCasts">
<p>This transform normalizes type tests and type casts,
also replacing type tests with singleton argument type with reference equality check
Any remaining...
</p>
<p>
</p>
</div>
<div class="member-body-long" id ="long-body-TypeTestsCasts">
<p>This transform normalizes type tests and type casts,
also replacing type tests with singleton argument type with reference equality check
Any remaining type tests
- use the object methods $isInstanceOf and $asInstanceOf
- have a reference type as receiver
- can be translated directly to machine instructions</p>
<p>Unfortunately this phase ended up being not Y-checkable unless types are erased. A cast to an ConstantType(3) or x.type
cannot be rewritten before erasure.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="TypeUtils" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'TypeUtils');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/TypeUtils.html">TypeUtils</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-TypeUtils">
<p>A decorator that provides methods on types
that are needed in the transformer pipeline.</p>
</div>
<div class="member-body-long" id ="long-body-TypeUtils">
<p>A decorator that provides methods on types
that are needed in the transformer pipeline.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="TypeUtils$" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'TypeUtils$');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
object
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/TypeUtils$.html">TypeUtils</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-TypeUtils$">
</div>
<div class="member-body-long" id ="long-body-TypeUtils$">
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="VCElideAllocations" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'VCElideAllocations');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/VCElideAllocations.html">VCElideAllocations</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-VCElideAllocations">
<p>This phase elides unnecessary value class allocations</p>
<p>For a value class V defined as:
class V(val underlying: U) extends AnyVal
we avoid unnecessary allo...
</p>
</div>
<div class="member-body-long" id ="long-body-VCElideAllocations">
<p>This phase elides unnecessary value class allocations</p>
<p>For a value class V defined as:
class V(val underlying: U) extends AnyVal
we avoid unnecessary allocations:
new V(u1) == new V(u2) => u1 == u2
(new V(u)).underlying() => u</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="VCInlineMethods" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'VCInlineMethods');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
</span>
<span class="member-kind">
class
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/VCInlineMethods.html">VCInlineMethods</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-VCInlineMethods">
<p>This phase inlines calls to methods of value classes.</p>
<p>A value class V after [[ExtensionMethods]] will look like:
class V[A, B, ...](val underlying: U) exten...
[T, S, ...]
<a href="#"></a></p>
<pre><code> ...
</code></pre>
<p></p>
<p>
<a href="#"></a>
<a href="#"></a>
<a href="#"></a>
</p>
<p>
[PatternMatcher]
[ExtensionMethods.extensionMethod]
[TypeSpecializer][VCInlineMethods]
</p>
</div>
<div class="member-body-long" id ="long-body-VCInlineMethods">
<p>This phase inlines calls to methods of value classes.</p>
<p>A value class V after [[ExtensionMethods]] will look like:
class V[A, B, ...](val underlying: U) extends AnyVal {
def foo[T, S, ...](arg1: A1, arg2: A2, ...) =
V.foo$extension<a href="#">T, S, ..., A, B, ...</a>(arg1, arg2, ...)</p>
<pre><code> ...
</code></pre>
<p>}</p>
<p>Let e have type V, if e is a stable prefix or if V does not have any class
type parameter, then we can rewrite:
e.foo<a href="#">X, Y, ...</a>
as:
V.foo$extension<a href="#">X, Y, ..., e.A, e.B, ...</a>(args)
Otherwise, we need to evaluate e first:
{
val ev = e
V.foo$extension<a href="#">X, Y, ..., ev.A, ev.B, ...</a>(args)
}</p>
<p>This phase needs to be placed after phases which may introduce calls to
value class methods (like [[PatternMatcher]]). This phase uses name mangling
to find the correct extension method corresponding to a value class method
(see [[ExtensionMethods.extensionMethod]]), therefore we choose to place it
before phases which may perform their own name mangling on value class
methods (like [[TypeSpecializer]]), this way [[VCInlineMethods]] does not
need to have any knowledge of the name mangling done by other phases.</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
<div id="ValueClasses$" class="member ">
<div class="member-title">
<span class="expand-button" onclick="toggleMemberBody(this, 'ValueClasses$');">[+]</span>
<span class="member-annotations">
</span>
<span class="member-modifiers">
final
</span>
<span class="member-kind">
object
</span>
<span class="member-name ">
<a href="../../../../.././api/dotty/tools/dotc/transform/ValueClasses$.html">ValueClasses</a>
</span>
</div><!-- end member-title -->
<div class="member-body">
<div class="member-body-short" id="short-body-ValueClasses$">
<p>Methods that apply to user-defined value classes</p>
</div>
<div class="member-body-long" id ="long-body-ValueClasses$">
<p>Methods that apply to user-defined value classes</p>
</div>
</div>
<script>
function toggleMemberBody(span, sig) {
var shortBody = document.getElementById("short-body-" + sig);
var longBody = document.getElementById("long-body-" + sig);
shortBody.classList.toggle("toggled")
longBody.classList.toggle("toggled")
span.innerHTML = (span.innerHTML == "[+]") ? "[-]" : "[+]";
}
</script>
</div><!-- end member -->
</div>
</div><!-- end entity-container -->
</div>
</div>
<script>
function toggleMenu() {
var wrapper = document.getElementById("content-wrapper");
wrapper.classList.toggle("toggled");
}
</script>
<script
src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"
integrity="sha384-3ceskX3iaEnIogmQchP8opvBy3Mi7Ce34nWjpBIwVTHfGYWQS9jwHDVRnpKKHJg7"
crossorigin="anonymous"
></script>
<script
src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.3.7/js/tether.min.js"
integrity="sha384-XTs3FgkjiBgo8qjEjBk0tGmf3wPrWtA6coPfQDfFEY8AnYJwjalXCiosYRBIBZX8"
crossorigin="anonymous"
></script>
<script
src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.5/js/bootstrap.min.js"
integrity="sha384-BLiI7JTZm+JWlgKa0M0kGRpJbF2J8q+qreVrKBC47e3K6BW78kGLrCkeRX6I9RoK"
crossorigin="anonymous"
></script>
<script src="../../../../.././js/highlight.pack.js"></script>
<script>
$(document).ready(function() {
$('pre code').each(function(i, block) {
hljs.highlightBlock(block);
});
});
</script>
</body>
</html>