cpptest-on-call:
          CPPTEST_ON_CALL(function-id) -> trigger-code ;

触发代码:
        语句-seq

语句-seq:
        语句
 语句序列 -> 语句
语句:
        表达式-语句
if-语句
return-语句
复合-语句

表达式-语句:
        分配-表达式

分配-表达式:
        逻辑-或-表达式
逻辑-或-表达式 ->
Assign() -> 分配-表达式
 逻辑-或-表达式 ->
Assign(value) [仅限 C++ ]

逻辑-或-表达式:
        逻辑-和-表达式
  逻辑-或-表达式 ->
Or() -> 逻辑-和-表达式
 逻辑-或-表达式 ->
Or(value) [仅限 C++ ]

逻辑-和-表达式:
       
相等-表达式
  逻辑-和-表达式 -> 
And() -> 相等-表达式
 逻辑-和-表达式 ->
And(value) [仅限 C++ ]

相等-表达式:
        关系-表达式
 相等-表达式 ->
Equal() -> 关系-表达式
 相等-表达式 ->
NotEqual() -> 关系-表达式
 相等-表达式 ->
Equal(value) [仅限 C++ ]
        相等-表达式 -> NotEqual(value)[仅限 C++ ]

关系-表达式:
        添加-表达式
关系-表达式 ->
Less() -> 添加-表达式
关系-表达式 ->
Greater() -> 添加-表达式
 关系-表达式 ->
LessOrEqual() -> 添加-表达式
关系-表达式 ->
GreaterOrEqual() -> 添加-表达式
 关系-表达式 ->
Less(value) [仅限 C++ ]
关系-表达式 ->
Greater(value) [仅限 C++ ]
关系-表达式 ->
LessOrEqual(value) [仅限 C++ ]
 关系-表达式 ->
GreaterOrEqual(value) [仅限 C++ ]

添加-表达式:
        乘法-表达式
添加-表达式-> Plus() -> 乘法-表达式
 添加-表达式 ->
Minus() -> 乘法-表达式
 添加-表达式 ->
Plus(value) [仅限 C++ ]

 添加-表达式 -> Minus(value) [仅限 C++ ]

乘法-表达式:
        一元运算符-表达式
乘法-表达式 -> Multiply() -> 一元运算符-表达式
 乘法-表达式->
Divide() -> 一元运算符-表达式
 乘法-表达式 ->
复合(value) [仅限 C++ ]
 乘法-表达式 ->
Divide(value) [仅限 C++ ]

一元运算符-表达式:
        后缀-表达式
  Not() -> 一元运算符-表达式
 Inc() -> 一元运算符-表达式
 Dec() -> 一元运算符-表达式
 Inc(value) [仅限 C++ ]
  Dec(value) [仅限 C++ ]

后缀-表达式:
        主要-表达式
 后缀-表达式 -> At() -> 主要-表达式
  后缀-表达式 ->
字段(字段-名称)
 后缀-表达式 -> FieldByExpr() -> 主要-表达式
 后缀-表达式 ->
在(value) [仅限 C++ ]
 后缀-表达式 -> 字段(value) [仅限 C++ ]

主要-表达式:
        自变量-表达式
 值-表达式
 LP() -> 分配-表达式 -> RP()
 执行-表达式

 断言(message) [弃止的]
  Fail(message)
  Report(message)
 RunId()

自变量-表达式:
        自变量(自变量-名称)
 ArgByExpr() -> 主要-表达式

值-表达式:
        简单-值-表达式
 指针-值-表达式 引用-值-表达式
 对象-值-表达式
 通用-值-表达式 [仅限 C++ ]


简单-值-表达式:
        字符(字符-值)
SChar(有符号-字符-值)
 UChar(无符号-字符-值)
 Wchar(wchar_t-value)
 短型(短型-值)
 UShort(ushort-value)
 Int(int-value)
     UInt(uint-value)
 Long(long-value)
 Ulong(ulong-value)
LLong(llong-value)
 ULLong(ullong-value)
 Float(float-value)
 Double(double-value)
 LDouble(long-double-value)
 Func((tgr_func_ptr)funcion-pointer-value)

指针-值-表达式:
        VoidPtr(void-ptr-value)
        CharPtr(char-ptr-value)
 SCharPtr(signed-char-ptr-value)
 UCharPtr(unsigned-char-ptr-value)
WCharPtr(wchar_t-ptr-value)
  ShortPtr(short-ptr-value)
 UShortPtr(ushort-ptr-value)
IntPtr(int-ptr-value)

 UIntPtr(uint-ptr-value)
LongPtr(long-ptr-value)
   ULongPtr(ulong-ptr-value)
      LLongPtr(llong-ptr-value)
        ULLongPtr(ullong-ptr-value)
        FloatPtr(float-ptr-value)
        DoublePtr(double-ptr-value)
        LDoublePtr(long-double-ptr-value)
 Ptr(void-ptr-value, element-type)

引用-值-表达式:
        CharRef(char-ptr-value)
        SCharRef(signed-char-ptr-value)
        UCharRef(unsigned-char-ptr-value)
        WCharRef(wchar_t-ptr-value)
        ShortRef(short-ptr-value)
        UShortRef(ushort-ptr-value)
        IntRef(int-ptr-value)
        UIntRef(uint-ptr-value)
        LongRef(long-ptr-value) 
        ULongRef(ulong-ptr-value)
        LLongRef(llong-ptr-value)
        ULLongRef(ullong-ptr-value)
        FloatRef(float-ptr-value)
        DoubleRef(double-ptr-value)
        LDoubleRef(long-double-ptr-value)
        VoidPtrRef(void-ptr-value)

        Ref(void-ptr-type, element-type)

对象-值-表达式:
        对象(obj-pointer, class-type)

通用-值-表达式 [仅限 C++ ]:
        值()

执行-表达式:
        执行((tgr_external_func_ptr)外部的-函数)
  执行-表达式 -> WithArg(自变量-名称) -> 主要-表达式

if-语句:
        If() -> 条件 -> 语句
 If() -> 条件 -> 语句 -> Else() -> 语句

条件:
        分配-表达式

return-语句:
        Return() -> 分配-表达式
 Return(value) [仅限 C++]

复合-语句:
        LB() -> RB()
  LB() -> 语句-seq -> RB()

值[仅限 C++ ]:
        内置类型或指针类型的 C/C++ 表达式
        ByRef(lvalue)

lvalue[仅限 C++ ]:
        C/C++ lvalue 表达式

外部-函数:
        具有 tgr_external_func_ptr 定义的特殊签名的 C/C++ 函数

指令:
        文件行(文件-名称, 行)
 行(行)

字段-名称, 自变量-名称, 信息, 文件-名称:
                 与常量 char* 类型兼容的类型的 C/C++ 表达式

  • No labels