Child::Link::IPC(3pm)

πŸ“¦
version 0.013 Β· 5 versions
, in ubuntu noble, ubuntu resolute, ubuntu stonking

okay so bestie, you found Child::Link::IPC(3pm) and honestly?? iconic. this is the base class for process links that provide IPC β€” like, the blueprint other classes get to inherit from when they wanna chat back and forth with a child process. 🫢

it's a mom class. it doesn't do the whole thing itself, it just sets the vibe and hands the actual handle-grabbing off to its subclasses. iykyk. ✨


🌸 SEE ALSO 🌸

this class inherits from, and you're gonna wanna meet:

  • Child::Link πŸ’…

✨ METHODS ✨

here's your toolkit, bestie. every single one, no skips:

  • $proc->new( $pid. @shared ) β€” the Constructor. this is where it all begins, the main character entrance. πŸ‘‘
  • $proc->read() β€” read a message from the child. like listening to your bestie spill tea, but in code. πŸ“
  • $proc->write( @MESSAGES ) β€” send the messages to the child. works like print, which means you must add "\n" yourself. no auto-newline, no hand-holding, you're on your own for the line break. πŸ’€
  • $proc->say( @MESSAGES ) β€” send the messages to the child. works like say, so it adds the separator for you (usually "\n"). this one is the pampered version, it does the annoying part. πŸŽ€
  • $proc->autoflush( $BOOL ) β€” turn autoflush on/off for the current processes write handle. and listen: this is on by default already. lowkey convenient fr fr. 🌈
  • $proc->flush() β€” flush the current processes write handle. push that buffered content OUT. πŸ”₯
  • $proc->ipc()
  • $proc->_ipc( $new ) β€” Accessors for you to use or ignore. that's literally it, they're just sitting there. use them, or don't, we're not the boss of you. πŸ™ˆ

πŸ¦‹ ABSTRACT METHODS πŸ¦‹

these are the ones the base class is like "not my job, you do it." if you're subclassing, bestie, you gotta implement these or it's giving incomplete. 😭

  • $proc->read_handle() β€” Should return a read handle for reading from the child. πŸ“–
  • $proc->write_handle() β€” Should return a write handle for writing to the child. ✍️
  • $proc->init( @shared ) β€” Called by new during construction. it shows up mid-build, like a surprise guest at the party. 🧚

πŸ’œ HISTORY πŸ’œ

Most of this was part of Parallel::Runner intended for use in the Fennec project. Fennec is being broken into multiple parts, this is one such part. so basically it moved out of the family home and got its own apartment. growth. 🌱


⭐ FENNEC PROJECT ⭐

This module is part of the Fennec project. See Fennec for more details. Fennec is a project to develop an extendable and powerful testing framework. Together the tools that make up the Fennec framework provide a potent testing environment.

The tools provided by Fennec are also useful on their own. Sometimes a tool created for Fennec is useful outside the greater framework. Such tools are turned into their own projects. This is one such project. 🌈

  • Fennec - The core framework β€” The primary Fennec project that ties them all together. the group chat admin, essentially. πŸ‘‘

πŸ‘‘ AUTHORS πŸ‘‘

  • Chad Granum exodist7@gmail.com πŸ’–

Copyright (C) 2010 Chad Granum

Child is free software; Standard perl licence.

Child is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the license for more details.

okay so real talk: that all-caps part is NOT me being dramatic, that's the actual legal disclaimer and it means exactly what it says. no promises, bestie. 🫢

and that's the whole thing! this fine piece of documentation came to you courtesy of perl v5.36.0, dated 2022-10-13, for Child::Link::IPC(3pm). slay, go write some IPC. periodt. πŸ’…βœ¨πŸ¦‹

πŸ“¦ where this page comes from