簡體   English   中英

如何在XML中使用邏輯條件?

[英]How to use logical conditions in XML?

<install-condition header-file="platform/lib_platform.h">is_bcm_soc_brd1() || is_bcm_soc_brd2() || is_bcm_soc_brd3()</install-condition>

這里我的輸入板類型是 is_board_jkl,所以 function is_bcm_soc_brd3() 將返回 True。 問題是 is_bcm_soc_brd3() 和 is_bcm_soc_brd4 有一個共同的項目。

但我的要求是,如果棋盤是is_board_jkl,就不要再執行了。 即在 C 代碼中我可以這樣寫,

If ( is_bcm_soc_brd1() || is_bcm_soc_brd2() ||   (is_bcm_soc_brd3() && !is_bcm_soc_brd4())
 {
    //do the action
 }

如何在下面給定的 XML 標簽中編寫等效代碼?

 <install-condition header-file="platform/lib_platform.h">is_bcm_soc_brd1() || is_bcm_soc_brd2() || is_bcm_soc_brd3()</install-condition>

貓平台/lib_platform.h

#include <string.h>
#include <stdint.h>
#include <unistd.h>
#include <stdlib.h>

int is_bcm_soc_brd1()
{
  if (is_board_abc())
    return TRUE;

  return FALSE;
}

int is_bcm_soc_brd2()
{
  if (is_board_def())
    return TRUE;

  return FALSE;
}


int is_bcm_soc_brd3()
{
  if (is_board_ghi() || (is_board_jkl()))  
    return TRUE;

  return FALSE;
}

int is_bcm_soc_brd4()
{
  if (is_board_jkl())
    return TRUE;

  return FALSE;
}

您可以在 XML 中寫入以下內容:

(名字是'ABC' AND(語言不是英語)AND(國家是比利時或德國或法國或意大利))作為:

['|','|','|',('country_id.code','=','be'),('country_id.code','=','ge'),('country_id.code ','=','fr'),('country_id.code','=','it'),('name','=','ABC'),('language.code',', =','en_US'),]

國家代碼可能不同,您可以用上面句子中的正確國家代碼替換國家代碼。

謝謝

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM