SORU
4 Aralık 2011, Pazar


Amaç &Java derleyicisi quot;ifade" (LetExpr)?

Java derleyici com.sun.tools.javac.tree.* let ifadeler için destek (LetExpr aramak) gibi görünüyor.

JCTree bir yorum bile bazı sözdizimi bahseder

(let int x = 3; in x 2)

elbette dilin dilbilgisi tarafından kabul edilen ve daha önce bir derleyici aşamasında reddedilmiş değildir.

Daha önce hiç görmedim bu yapı, kökenini merak ediyorum.

Dahili javac tarafından kullanılır ya da diğer araçlar tarafından sentezlenen? Belki de hiç ışık görmemiş olan bir dil özelliği Java çok eski günlerden sadece bir obje mi?

Bugün yapılabilecek işe yarar bir şey var mı?

Genel olarak konuşursak, neden vardır?

CEVAP
4 Aralık 2011, Pazar


Genel olarak konuşursak, neden vardır?

Google da anlaşılacağı gibi autoboxing için var.

Eğer böyle bir kod varsa:

Integer foo = 0;
foo  ;

Java DAHİLİ olarak bu yardımcı ifadeye bu yapar:

Integer foo = 0;
let int foo_helper = foo.intValue() in foo_helper  ;

Kaynak: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6614974

İfade belli ki hiçbir sözdizimi gösterimi var, sadece AST düzey bir dönüşüm derleme kolaylaştırmak için.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • bashirsultani

    bashirsultan

    22 Mart 2010
  • SolidWorksTutoriels

    SolidWorksTu

    14 Kasım 2013
  • TheOtherMau5

    TheOtherMau5

    6 Mart 2012