2013-05-08 27 views
6

Tôi muốn ngăn chặn đầu ra của biến helper trong bảng Scala:Suppress hiển thị các kết quả trong bảng scala

val sqs = scen.rssis.toSeq.filter { case (ap,s) => 
    s.exists(e => e.epoch > 1) }.sortBy { -_._2.length }.take(10) 
                //> sqs : 
                // *snip* a lot of stuff I'd rather not have 
                //| Output exceeds cutoff limit. 
    sqs foreach { case (api,s) => 
    println(f"${scen.aps(api).ssid}%-10s ${s.length}% 5d") 
    }            //> 2WIRE230  74 
                //| 2WIRE736  74 
                //| Jamie56  73 
                //| VVHOA   69 
                //| 2WIRE059  68 
                //| Rainsnet  68 
                //| 2WIRE519  67 
                //| 2WIRE604  65 
                //| neo_vex_24 63 
                //| ALEMANIA7  63 

Có cách nào để ngăn chặn đầu ra của công việc trong bảng Scala?

Trả lời

6

Không có cách rõ ràng nào để chặn đầu ra. Tuy nhiên, bạn có thể dễ dàng đạt được điều này bằng cách di chuyển các khai báo trình trợ giúp trong một đối tượng bên ngoài (hoặc lồng nhau).

Ví dụ, sau đây sẽ làm điều đó:

object worksheet { 
    object helper { 
    val sqs = scen.rssis.toSeq.filter { case (ap,s) => 
     s.exists(e => e.epoch > 1) }.sortBy { -_._2.length }.take(10) 
    } 

    helper.sqs foreach { case (api,s) => 
    println(f"${scen.aps(api).ssid}%-10s ${s.length}% 5d") 
    } 
} 
+0

Ohhhhh .... Các bước tiếp theo: 1. Thêm 'nhập khẩu helper._'. 2. Viết macro để làm điều đó cho chúng tôi ... – gzm0

Các vấn đề liên quan