10
17
2014
71

(lib)Tcl 现代方法:变量

之前有人问到如何从 C 端访问 Tcl 变量,此处做一总结。庶几不失「现代」之名。有关 Tcl_Obj 的维护者资料击此

于是终于回到了主线。《Tcl 现代方法》本来是作为记录 Tcl 现代用法的系列博文,一开始是介绍 C 库的,但是后来 Tcl 脚本的内容反倒更多,结果现在纯粹谈起来 C 库又会导致歧义,因此在标题前加上 lib 标记,以示内容是 C 库而非 Tcl 脚本。

背景

Tcl 自 8.0 起,引入了 Tcl_Obj 系统,该系统在保留 Tcl 「Everything is a String」原则的同时,大大提高了程序效率,可以总结成这样:Tcl 变量存在一个显类型(Tcl 端类型)和隐类型(C 端类型),程序员脑中又有一个实用类型,显类型一定是字符串,但实际上实用类型并不一定是显类型,而使用隐类型的一种或多种,如 for 循环中的计数器 i,实用整数类型,而显类型则是字符串,隐类型应当是 int。

在过去,显类型和隐类型都是字符串,导致计数器 i 每次循环都会走一遍「字符串->整数->字符串」,效率极差。Tcl_Obj 则将字符串表示和隐类型数据一起保存,每当需要字符串时,就直接返回字符串,需要隐类型数据时,就直接返回隐类型数据;如果两者不匹配,则将其中过期了的一种更新。如每次 for 循环中如果有 puts $i,则会每次都更新一次 i 的字符串表示然后打印;如果在 for 循环外执行 puts $i,则只会造成一次字符串表示更新。更新隐类型数据同理。

说来好玩,因为一开始没用 Tcl_Obj,所以 Tcl 有一套相当强大的字符串处理函数,叫做 Tcl_DString(dynamic string),因为不推荐用于变量,而且比较直观,一看就懂,故而此处不做讨论。

另外注意,我提到的隐类型、显类型、实用类型,都是为了讨论方便自己提出的,实际上 Tcl 界乃至编程界并没有这样的说法(或许会有类似的讲法,如果你知道请务必告诉我)。

看上去好像很复杂,其实规则很简单:dual-ported (internal representation and string representation); cache of each other and computed lazily.

不过絮叨一大串,其实本文不介绍 Tcl_Obj 用法,只是个背景而已。

示例代码

A piece of code is worth a thousand words.

#include <tcl.h>

int z = 0;

void ObjRW(Tcl_Interp *interp)
{
    Tcl_Obj *xObj;
    double val;

    /* Read */
    xObj = Tcl_GetVar2Ex(interp, "x", NULL, 0); /* not incr'ing its refcount */
    Tcl_GetDoubleFromObj(interp, xObj, &val); /* not incr'ing its refcount */
    printf("x = %lf\n", val);
    /* Write */
    Tcl_SetDoubleObj(xObj, 6.28);
    xObj = Tcl_SetVar2Ex(interp, "x", NULL, xObj, 0); /* not incr'ing its refcount */
    /* Read (again) */
    Tcl_GetDoubleFromObj(interp, xObj, &val);
    Tcl_DecrRefCount(xObj);
    printf("x = %lf (new)\n", val);
}

/* Inefficient in most cases. Use Tcl_Obj instead. */
void StrRW(Tcl_Interp *interp)
{
    /* the string representation of y will be updated and returned */
    printf("y = %s\n", Tcl_GetVar(interp, "y", 0));
    Tcl_SetVar(interp, "y", "42", 0); /* now the "real" data will be outdated */
    printf("y = %s (new)\n", Tcl_GetVar(interp, "y", 0));
}

void LinkedVar(Tcl_Interp *interp)
{
    Tcl_Obj *zObj;
    int value;

    /* Original value */
    zObj = Tcl_GetVar2Ex(interp, "z", NULL, 0); /* Tcl simply returns our z */
    Tcl_GetIntFromObj(interp, zObj, &value);
    printf("z = %d\n", value);
    Tcl_DecrRefCount(zObj); /* delete the old obj */
    /* C-side */
    z = 10;
    zObj = Tcl_GetVar2Ex(interp, "z", NULL, 0); /* not incr'ing its refcount */
    Tcl_GetIntFromObj(interp, zObj, &value);
    printf("z = %d (C new)\n", value);
    /* Tcl-side */
    Tcl_SetIntObj(zObj, 100);
    Tcl_SetVar2Ex(interp, "z", NULL, zObj, 0); /* update the var */
    Tcl_DecrRefCount(zObj);
    printf("z = %d (Tcl new)\n", z); /* our own z got updated */
}

int main()
{
    Tcl_Interp *interp;
    Tcl_Obj *var1, *var2; /* var1 double, var2 int */

    /* Initialize */
    interp = Tcl_CreateInterp();
    /* Create Tcl_Obj's */
    var1 = Tcl_NewDoubleObj(3.14);
    var2 = Tcl_NewIntObj(99);
    /* Create variables */
    /* Not incrementing the refcount means we transfer the ownership */
    Tcl_SetVar2Ex(interp, "x", NULL, var1, 0); /* NULL means x isn't an array */
    Tcl_SetVar2Ex(interp, "y", NULL, var2, 0);
    Tcl_LinkVar(interp, "z", (void *)&z, TCL_LINK_INT); /* MAGIC! */
    /* Read/write them */
    ObjRW(interp);
    StrRW(interp);
    LinkedVar(interp);
    /* Finalize */
    Tcl_UnsetVar(interp, "x", 0);
    Tcl_UnsetVar(interp, "y", 0);
    Tcl_UnsetVar(interp, "z", 0);
    Tcl_DeleteInterp(interp);
    return 0;
}

参考文献

(写这么一节参考文献,应该能让我的博客看上去更专业吧smiley

  1. Tcl Source Code Wiki
  2. Tcl man pages
  3. 《Tcl/Tk 入门经典》,中文版第二版
Category: 编程 | Tags: tcl tcl 现代方法 | Read Count: 3381
Avatar_small
rca 说:
Oct 23, 2014 08:56:57 AM

这么古老的东西,好玩么

Avatar_small
Mike Manilone 说:
Oct 25, 2014 10:27:05 AM

@rca: 很有意思的,和 Lisp 的可玩性差不多。不过毕竟确实老了些,没有闭包,但是其他东西都很全。

mega888 apk 说:
Aug 30, 2021 12:05:56 AM

I propose merely very good along with reputable data, consequently visualize it:

Satta king 说:
Sep 25, 2021 05:17:55 AM

Profit primarily prime quality items -- you can understand them all within:

J&K 11th Model Paper 说:
Aug 16, 2022 10:33:29 PM

This JKBOSE Class Xllth Exams were administered by the Jammu and Kashmir State Board of School Education. upon the satisfactory completion of the exam. The Jammu and Kashmir 11th Question Paper 2023 for the JKBOSE Class 11th Exam will be released soon by the JK Board. All students who choose to pursue further education should take this test seriously since, upon completing it, J&K 11th Model Paper 2023 they will be able to pursue a variety of professional paths as well as enrol in undergraduate, diploma, and ITI programmes. JK Board will release the JKBOSE Class 11th test Question Paper 2023 in the month of May on the same official web portal site, according to the official announcement.

AP 10th Physics Ques 说:
Sep 17, 2022 10:06:40 PM

Physical Science is the part of Science known as Physics (PS), every student in class 10th grade studying at Government & Private Schools of the state board can download the AP SSC PS Model Paper 2023 with answers for all topics of the course designed by the board experts based on the new revised syllabus and curriculum of the BSEAP. Either Telugu medium, English medium and Urdu medium students of class 10th can download the AP SSC Physics model papers 2023 to practice with regular revisions and mock tests. AP 10th Physics Question Paper Class teachers and leading institutional experts are prepared those AP 10th Class PS Model Paper 2023 Pdf with answers that support all exam formats of the board such as Summative Assessments (SA-1 & SA-2) and Formative assessments (FA-1, FA-2, FA-3, FA-4) along with Assignments.

seo service UK 说:
Dec 25, 2023 10:47:56 PM

someone Sometimes with visits your blog regularly and recommended it in my experience to read as well. The way of writing is excellent and also the content is top-notch. Thanks for that insight you provide the readers!

먹튀폴리스신고 说:
Jan 01, 2024 01:33:02 PM

Hey! hey! And ole!!!!! what a great video tutorial!!! I love your explanations, because I'm sure I would have put the pastry bag lower, hehehe, and everything would have been squeezed out!! I mean, thank you so much for showing us how beautiful you are!!!! I love having met you. Kisses

온라인카지노추천 说:
Jan 01, 2024 02:19:53 PM

Hey! hey! And ole!!!!! what a great video tutorial!!! I love your explanations, because I'm sure I would have put the pastry bag lower, hehehe, and everything would have been squeezed out!! I mean, thank you so much for showing us how beautiful you are!!!! I love having met you. Kisses

안전놀이터 说:
Jan 01, 2024 02:36:52 PM

Excellent goods from you, I have understood your stuff previous to and you are simply extremely fantastic. I actually like what you’ve obtained right here, really like what you are saying and the way in which by which you are saying it. You are making it enjoyable and you still care to stay sensible. I can’t wait to read much more from you. This is really a wonderful

토크리 说:
Jan 01, 2024 02:48:37 PM

Love is indescribable and unreliable, when we fall in love with someone, we get eager to express our love feeling in front of them, which is in our heart. However, some of us can express feeling in front of their desired one, but you know all of us don't have such courage, which can easily confess their feeling, consequence of this; they live life without loved and eager. To keep this thing in mind our Specialist, Pt. Hari OM Shastri ji provides love problems solution.

메이저놀이터추천 说:
Jan 01, 2024 03:07:06 PM

Once a while, we seem that many love couples, whose relationship works optimally for a few months and years, but sudden some changes occur which is totally unimaginable, in fact, a couple also doesn't even think that about that, such a kind of moment they will ever face in their life. Because sometimes circumstance makes couple life worse and can't get that point. This is the only reason, most love story ends.

메이저놀이터 说:
Jan 01, 2024 03:28:31 PM

Our web design company in Dubai is the leading provider of professional website design, web development, WordPress, Joomla, Magento, website hosting, website maintenance, Graphic Design, digital marketing, and search engine optimization in the UAE to help your business grow. In Dubai, we are the most trusted website design company and digital services agency. Using advanced coding, user-friendly designs, natural navigation, and the latest technology, we craft dynamic and stunning websites for an unparalleled digital experience that inspires and syncs with your customers on any browser and device.

안전놀이터검증 说:
Jan 01, 2024 03:48:12 PM

The key to getting in a good weightlifting exercise these days? Bodybuilders are utilizing household items to get their workouts in. These are weight gain supplements primarily used by and recommended to those who struggle to gain weight. If you are a recreational gym-goer just looking to stay in shape, whey protein may be a good option to aid muscle building and recovery.

먹튀사이트 说:
Jan 01, 2024 04:00:00 PM

The key to getting in a good weightlifting exercise these days? Bodybuilders are utilizing household items to get their workouts in. These are weight gain supplements primarily used by and recommended to those who struggle to gain weight. If you are a recreational gym-goer just looking to stay in shape, whey protein may be a good option to aid muscle building and recovery.

토토사이트 说:
Jan 01, 2024 04:08:38 PM

Now You Can Stop Your Break Up, Divorce or Lovers Rejection… Even If Your Situation Seems Hopeless! My husband said he no longer loved me at the end of January this year and i was hurt and heart broken i felt like my life was about to end and I almost committed suicide, I was emotionally down for a very long time. Thanks to a spell caster called Dr OSCAR DILAN, which I meet online, on one faithful day, as I was browsing through the internet and I came across a lot of testimonies about this particular spell caster. Some people testified that he brought their Ex lover back, some testified that he restores womb, cure cancer and other sickness, some testified that he can cast a spell to stop divorce and so on. I also come across one particular testimony and it was about a woman called Tracey Hilton,

먹튀검증커뮤니티 说:
Jan 01, 2024 04:17:17 PM

Wow, cool post. I’d like to write like this too – taking time and real hard work to make a great article… but I put things off too much and never seem to get started. Thanks though.I hope it will be helpful for almost all peoples that are searching for this type of topic. I Think this website is best for such topic. good work and quality of articles

우리카지노 说:
Jan 01, 2024 04:35:21 PM

May I simply just say what a comfort to find an individual who actually understands what they're discussing on the web. You certainly realize how to bring an issue to light and make it important. More people really need to look at this and understand this side of your story. It's surprising you're not more popular given that you surely possess the gift.

안전토토사이트 说:
Jan 01, 2024 05:00:18 PM

Hey! hey! And ole!!!!! what a great video tutorial!!! I love your explanations, because I'm sure I would have put the pastry bag lower, hehehe, and everything would have been squeezed out!! I mean, thank you so much for showing us how beautiful you are!!!! I love having met you. Kisses

먹튀검증커뮤니티 说:
Jan 01, 2024 05:17:59 PM

Hey! hey! And ole!!!!! what a great video tutorial!!! I love your explanations, because I'm sure I would have put the pastry bag lower, hehehe, and everything would have been squeezed out!! I mean, thank you so much for showing us how beautiful you are!!!! I love having met you. Kisses

토토사이트추천 说:
Jan 01, 2024 05:34:23 PM

Love is indescribable and unreliable, when we fall in love with someone, we get eager to express our love feeling in front of them, which is in our heart. However, some of us can express feeling in front of their desired one, but you know all of us don't have such courage, which can easily confess their feeling, consequence of this; they live life without loved and eager. To keep this thing in mind our Specialist, Pt. Hari OM Shastri ji provides love problems solution.

먹튀검증 说:
Jan 01, 2024 06:40:57 PM

Once a while, we seem that many love couples, whose relationship works optimally for a few months and years, but sudden some changes occur which is totally unimaginable, in fact, a couple also doesn't even think that about that, such a kind of moment they will ever face in their life. Because sometimes circumstance makes couple life worse and can't get that point. This is the only reason, most love story ends.

가족방 说:
Jan 01, 2024 06:58:25 PM

Our web design company in Dubai is the leading provider of professional website design, web development, WordPress, Joomla, Magento, website hosting, website maintenance, Graphic Design, digital marketing, and search engine optimization in the UAE to help your business grow. In Dubai, we are the most trusted website design company and digital services agency. Using advanced coding, user-friendly designs, natural navigation, and the latest technology, we craft dynamic and stunning websites for an unparalleled digital experience that inspires and syncs with your customers on any browser and device.

토토검증사이트 说:
Jan 01, 2024 07:05:52 PM

Thanks for your write-up. What I want to point out is that while looking for a good internet electronics shop, look for a website with comprehensive information on critical indicators such as the personal privacy statement, security details, any payment procedures, and other terms in addition to policies. Constantly take time to look into the help along with FAQ areas to get a far better idea of how a shop functions, what they are capable of doing for you, and just how you can make use of the features.

먹튀사이트조회 说:
Jan 01, 2024 07:12:56 PM

Thanks for your write-up. What I want to point out is that while looking for a good internet electronics shop, look for a website with comprehensive information on critical indicators such as the personal privacy statement, security details, any payment procedures, and other terms in addition to policies. Constantly take time to look into the help along with FAQ areas to get a far better idea of how a shop functions, what they are capable of doing for you, and just how you can make use of the features.

메이저토토사이트 说:
Jan 01, 2024 07:24:36 PM

According to Jack Ellerby, project officer for Cumbria Dark Skies, fieldwork tracing the impact of light pollution and wildlife tends to fall under the radar, because the effects on animals are more incremental than that of other pollution, such as sewage, oil spills or plastic litter.

먹튀검증업체 说:
Jan 01, 2024 07:30:06 PM

Factoring some form of working task into the recruitment process has long been a way to assess a candidate’s suitability for a role. Along with being a chance for employers to see how their potential hire would approach aspects of the job, these ‘working interviews’ also enable the candidate to flex their skills, especially if they don’t thrive in the interview hotseat.

동행파워볼사이트 说:
Jan 01, 2024 07:48:53 PM

This is my first time i visit here. I found so many interesting stuff in your blog especially its discussion. From the tons of comments on your articles, I guess I am not the only one having all the enjoyment here keep up the good work Greetings to each one, it's really a particular for me to visit this website page, it comprises of helpful Information

주간토토 说:
Jan 01, 2024 09:05:49 PM

There is this concept that there must be a better candidate out there, so [companies] get more interviewers involved and, sometimes, they just end up more confused,” Ho says, noting that too many interviewers can create a lack of focus in the questioning as well as unease for the candidate.

먹튀보증 说:
Jan 01, 2024 09:22:19 PM

Hi I found your site by mistake when i was searching yahoo for this acne issue, I must say your site is really helpful I also love the design, its amazing!. I don’t have the time at the moment to fully read your site but I have bookmarked it and also add your RSS feeds. I will be back in a day or two. thanks for a great site

해외사이트가입 说:
Jan 01, 2024 09:44:53 PM

It has fully emerged to crown Singapore's southern shores and undoubtedly placed her on the global map of residential landmarks. I still scored the more points than I ever have in a season for GS. I think you would be hard pressed to find somebody with the same consistency I have had over the years so I am happy with that

먹튀 说:
Jan 01, 2024 09:57:08 PM

Nice information, valuable and excellent design, as share good stuff with good ideas and concepts, lots of great information and inspiration, both of which I need, thanks to offer such a helpful information here.Actually I read it yesterday but I had some thoughts about it and today I wanted to read it again because it is very well written.

카지노게임사이트 说:
Jan 01, 2024 10:07:59 PM

I love them!!! Let's see if I get excited and prepare them for my son's party tomorrow! At the moment I have already practiced with your super cupcakes, they turned out amazing!!!! I linked you by the way!!! he he! Kisses and enjoy the heat, in Barcelona it is unbearable!!!!!!!!! and to think that a year ago I was giving birth! ahahahaha

안전카지노사이트 说:
Jan 01, 2024 10:14:04 PM

Hey! hey! And ole!!!!! what a great video tutorial!!! I love your explanations, because I'm sure I would have put the pastry bag lower, hehehe, and everything would have been squeezed out!! I mean, thank you so much for showing us how beautiful you are!!!! I love having met you. Kisses

해외안전놀이터코드 说:
Jan 01, 2024 10:33:32 PM

Once a while, we seem that many love couples, whose relationship works optimally for a few months and years, but sudden some changes occur which is totally unimaginable, in fact, a couple also doesn't even think that about that, such a kind of moment they will ever face in their life. Because sometimes circumstance makes couple life worse and can't get that point. This is the only reason, most love story ends.

สล็อต 说:
Jan 01, 2024 10:44:23 PM

Once a while, we seem that many love couples, whose relationship works optimally for a few months and years, but sudden some changes occur which is totally unimaginable, in fact, a couple also doesn't even think that about that, such a kind of moment they will ever face in their life. Because sometimes circumstance makes couple life worse and can't get that point. This is the only reason, most love story ends.

먹튀사이트 说:
Jan 01, 2024 11:13:01 PM

Our Data Science course in Hyderabad will also help in seeking the highest paid job as we assist individuals for career advancement and transformation. We carefully curate the course curriculum to ensure that the individual is taught the advanced concepts of data science.

먹튀검증 说:
Jan 01, 2024 11:45:52 PM

Of course, some nimble employers may be able to harness these over-qualified workers. Greer-King says small companies in particular, less constrained by corporate structures and hierarchies, are more able to recruit over-qualified employees. “Start-ups are agile and have flexibility,” he says. “They can hire an overly skilled candidate and justify that with a job title and wage that suits their experience.”

오래된토토사이트가입 说:
Jan 01, 2024 11:47:24 PM

May I simply just say what a comfort to find an individual who actually understands what they're discussing on the web. You certainly realize how to bring an issue to light and make it important. More people really need to look at this and understand this side of your story. It's surprising you're not more popular given that you surely possess the gift.

먹튀검증사이트 说:
Jan 01, 2024 11:49:12 PM

There couple of fascinating points with time in this post but I don’t know if these center to heart. There’s some validity but I am going to take hold opinion until I explore it further. Excellent article , thanks and we want more! Added to FeedBurner likewise

먹튀사이트 说:
Jan 01, 2024 11:51:54 PM

Our web design company in Dubai is the leading provider of professional website design, web development, WordPress, Joomla, Magento, website hosting, website maintenance, Graphic Design, digital marketing, and search engine optimization in the UAE to help your business grow. In Dubai, we are the most trusted website design company and digital services agency. Using advanced coding, user-friendly designs, natural navigation, and the latest technology, we craft dynamic and stunning websites for an unparalleled digital experience that inspires and syncs with your customers on any browser and device.

제왕카지노 说:
Jan 02, 2024 12:00:27 AM

Wow, cool post. I’d like to write like this too – taking time and real hard work to make a great article… but I put things off too much and never seem to get started. Thanks though.I hope it will be helpful for almost all peoples that are searching for this type of topic. I Think this website is best for such topic. good work and quality of articles

먹튀검증 说:
Jan 20, 2024 02:46:02 PM

Thank you for helping people get the information they need. Great stuff as usual. Keep up the great work!!

카지노사이트 说:
Jan 20, 2024 03:41:18 PM

awesome article. Thank you for sharing the post with your tribe

카지노 说:
Jan 20, 2024 04:10:58 PM

awesome article. Thank you for sharing the post with your tribe

슬롯커뮤니티 说:
Jan 20, 2024 04:58:21 PM

"I truly appreciate basically perusing the majority of your weblogs. Just needed to advise you that you have individuals like me who value your work. Certainly an awesome post. Caps off to you! The data that you have given is exceptionally useful.

"

카지노사이트 说:
Jan 20, 2024 05:13:42 PM

I know your expertise on this. I must say we should have an online discussion on this. Writing only comments will close the discussion straight away! And will restrict the benefits from this information.

머니맨 说:
Jan 20, 2024 05:51:10 PM

Excellent article. Very interesting to read. I really love to read such a nice article. Thanks! keep rocking

바카라 사이트 说:
Jan 20, 2024 06:25:37 PM

Actually I read it yesterday but I had some thoughts about it and today I wanted to read it again because it is very well written.

온라인카지노 说:
Jan 20, 2024 07:17:13 PM

There’s noticeably a bundle to learn about this. I assume you made sure good points in features also.

먹튀검증 说:
Jan 20, 2024 07:58:09 PM

Always so interesting to visit your site.What a great info, thank you for sharing. this will help me so much in my learning

슬롯사이트 说:
Jan 20, 2024 08:36:35 PM

This particular papers fabulous, and My spouse and i enjoy each of the perform that you have placed into this. I’m sure that you will be making a really useful place. I has been additionally pleased. Good perform!

industrial outdoor s 说:
Jan 20, 2024 09:16:21 PM

I gotta favorite this website it seems very helpful .

카지노사이트 说:
Jan 21, 2024 01:33:15 PM

Nice post mate, keep up the great work, just shared this with my friendz

소액결제현금화 说:
Jan 21, 2024 02:03:44 PM

Thank you for very usefull information..

스포츠무료중계 说:
Jan 21, 2024 03:50:25 PM

I have read your excellent post. This is a great job. I have enjoyed reading your post first time. I want to say thanks for this post. Thank you..

카지노커뮤니티 说:
Jan 21, 2024 04:35:00 PM

"This is a good tip especially to those fresh to the blogosphere.
Short but very precise information… Appreciate your sharing this
one. A must read post!"

하노이 유흥 说:
Jan 26, 2024 12:34:29 PM

하노이 꼭 가봐야 할 베스트 업소 추천 안내 및 예약, 하노이 밤문화 에 대해서 정리해 드립니다. 하노이 가라오케, 하노이 마사지, 하노이 풍선바, 하노이 밤문화를 제대로 즐기시기 바랍니다. 하노이 밤문화 베스트 업소 요약 베스트 업소 추천 및 정리.

카지노사이트 说:
Jan 26, 2024 12:34:41 PM

카지노사이트 바카라사이트 우리카지노 카지노는 바카라, 블랙잭, 룰렛 및 슬롯 등 다양한 게임을 즐기실 수 있는 공간입니다. 게임에서 승리하면 큰 환호와 함께 많은 당첨금을 받을 수 있고, 패배하면 아쉬움과 실망을 느끼게 됩니다.

먹튀사이트 说:
Jan 29, 2024 11:41:53 AM

No.1 먹튀검증 사이트, 먹튀사이트, 검증사이트, 토토사이트, 안전사이트, 메이저사이트, 안전놀이터 정보를 제공하고 있습니다. 먹튀해방으로 여러분들의 자산을 지켜 드리겠습니다. 먹튀검증 전문 커뮤니티 먹튀클린만 믿으세요!!

베트남 유흥 说:
Jan 29, 2024 11:44:40 AM

베트남 남성전용 커뮤니티❣️ 베트남 하이에나 에서 베트남 밤문화를 추천하여 드립니다. 베트남 가라오케, 베트남 VIP마사지, 베트남 이발관, 베트남 황제투어 남자라면 꼭 한번은 경험 해 봐야할 화끈한 밤문화로 모시겠습니다.

1인샵 说:
Jan 29, 2024 02:07:38 PM

Thank you for your blog. It's awesome!

무료스포츠중계 说:
Jan 29, 2024 02:20:26 PM

I found your this post while searching for information about blog-related research ... It's a good post .. keep posting and updating information.

먹튀검증 说:
Jan 29, 2024 02:32:56 PM

Very good topic, similar texts are I do not know if they are as good as your work out. These you will then see the most important thing, the application provides you a website a powerful important internet page

buy web traffic 说:
Jan 29, 2024 02:42:16 PM

Great tips and very easy to understand. This will definitely be very useful for me when I get a chance to start my blog

호빵맨벳 说:
Jan 29, 2024 02:49:16 PM

많은 사람들에게 이것은 중요하므로 내 프로필을 확인하십시오.

캡틴도메인 说:
Jan 29, 2024 03:04:36 PM

많은 사람들에게 이것은 중요하므로 내 프로필을 확인하십시오.

굿모닝도메인 说:
Jan 29, 2024 03:09:54 PM

많은 사람들에게 이것은 중요하므로 내 프로필을 확인하십시오.

소닉카지노 도메인 说:
Jan 29, 2024 03:15:35 PM

많은 사람들에게 이것은 중요하므로 내 프로필을 확인하십시오.

밀라노도메인 说:
Jan 29, 2024 03:21:36 PM

이 목표에 도달했을 때의 사실을 생각해보십시오.


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter

Powered by Chito | Hosted at is-Programmer | Theme: Aeros 2.0 by TheBuckmaker.com