localsNumberArgAt() публичный Метод

public localsNumberArgAt ( IoObject locals, int i ) : IoNumber
locals IoObject
i int
Результат IoNumber
Пример #1
0
        public static IoObject slotSubstract(IoObject self, IoObject locals, IoObject message)
        {
            IoMessage m = message as IoMessage;
            IoNumber  o = m.localsNumberArgAt(locals, 0);

            return(IoNumber.newWithDouble(self.state, -o.asDouble()));
        }
Пример #2
0
        public static IoObject slotArgAt(IoObject target, IoObject locals, IoObject message)
        {
            IoMessage self  = target as IoMessage;
            IoMessage m     = message as IoMessage;
            int       index = m.localsNumberArgAt(locals, 0).asInt();
            IoObject  v     = self.args[index] as IoObject;

            return(v != null ? v : self.state.ioNil);
        }
Пример #3
0
Файл: IoList.cs Проект: ypyf/io
        public static IoObject slotAt(IoObject target, IoObject locals, IoObject message)
        {
            IoMessage m   = message as IoMessage;
            IoNumber  ind = m.localsNumberArgAt(locals, 0);
            IoList    o   = target as IoList;
            IoObject  v   = o.list[ind.asInt()] as IoObject;

            return(v == null ? target.state.ioNil : v);
        }
Пример #4
0
        public static IoObject slotAt(IoObject target, IoObject locals, IoObject message)
        {
            IoMessage m   = message as IoMessage;
            IoSeq     o   = target as IoSeq;
            IoSeq     res = IoSeq.createObject(target.state);
            IoNumber  arg = m.localsNumberArgAt(locals, 0);

            res.value += o.value.Substring(arg.asInt(), 1);
            return(res);
        }
Пример #5
0
Файл: IoList.cs Проект: ypyf/io
        public static IoObject slotRemoveAt(IoObject target, IoObject locals, IoObject message)
        {
            IoMessage m   = message as IoMessage;
            IoNumber  ind = m.localsNumberArgAt(locals, 0);
            IoList    o   = target as IoList;

            try
            {
                o.list.RemoveAt(ind.asInt());
                return(target);
            }
            catch (ArgumentOutOfRangeException aoore)
            {
                object ex = aoore;
                return(target.state.ioNil);
            }
        }