| -------------------------------------------------------------------------------- |
| -- Copyright (c) 2012 Sierra Wireless. |
| -- All rights reserved. This program and the accompanying materials |
| -- are made available under the terms of the Eclipse Public License v1.0 |
| -- which accompanies this distribution, and is available at |
| -- http://www.eclipse.org/legal/epl-v10.html |
| -- |
| -- Contributors: |
| -- Kevin KIN-FOO <kkinfoo@sierrawireless.com> |
| -- - initial API and implementation and initial documentation |
| -------------------------------------------------------------------------------- |
| local M = {} |
| |
| function M._internalcontent() |
| return { |
| content = nil, -- block |
| unknownglobalvars = {}, -- list of item |
| tag = "MInternalContent" |
| } |
| end |
| |
| function M._block() |
| return { |
| content = {}, -- list of expr (identifier, index, call, invoke, block) |
| localvars = {}, -- list of {var=item, scope ={min,max}} |
| sourcerange = {min=0,max=0}, |
| tag = "MBlock" |
| } |
| end |
| |
| function M._identifier() |
| return { |
| definition, -- item |
| sourcerange = {min=0,max=0}, |
| tag = "MIdentifier" |
| } |
| end |
| |
| function M._index(key, value) |
| return { |
| left= key, -- expr (identifier, index, call, invoke, block) |
| right= value, -- string |
| sourcerange = {min=0,max=0}, |
| tag = "MIndex" |
| } |
| end |
| |
| function M._call(funct) |
| return { |
| func = funct, -- expr (identifier, index, call, invoke, block) |
| sourcerange = {min=0,max=0}, |
| tag = "MCall" |
| } |
| end |
| |
| function M._invoke(name, expr) |
| return { |
| functionname = name, -- string |
| record = expr, -- expr (identifier, index, call, invoke, block) |
| sourcerange = {min=0,max=0}, |
| tag = "MInvoke" |
| } |
| end |
| |
| return M |