2010-12-07 2 views
1

Подъемная рама обеспечивает Easy way для определения файла Sitemap.Использование оператора вопросительного знака в лифте

Я не совсем понимаю пример, который он предоставляет. Что означает ? и / в следующем фрагменте?

def siteMap() = SiteMap(Menu(S ? "Home")/"index") 
+0

Вы можете захотеть изменить свой вопрос, чтобы указать, что это лифт вопрос - Scala не операторы самой по себе , и? это всего лишь вызов метода, поэтому он означает, что он полностью зависит от контекста - в данном случае, от SiteMap лифта. – Submonoid 2010-12-07 09:45:03

ответ

1

Оба? и/здесь - методы.

/** 
    * Get a localized string or return the original string. 
    * 
    * @param str the string to localize 
    * 
    * @return the localized version of the string 
    * 
    * @see # resourceBundles 
    */ 
    def ?(str: String): String = ?!(str, resourceBundles) 

Конструктор меню возвращает тип PreMenu, метод /, определенный в PreMenu

/** 
* The method to add a path element to the URL representing this menu item 
*/ 
def /(pathElement: String): Menuable with WithSlash = 
    new Menuable(name, linkText, pathElement :: Nil, false, Nil, Nil) with WithSlash 
0

Я ничего не знаю о Lift, но, посмотрев на ScalaDoc for S, ясно, что S ? str возвращает свойство локализации (проверить this для более локализации), или в случае не нахождения имущества строка, которую он сам.